Если вы говорите об Oracle, тогда вместо отключите эту вставку вы можете:
IF entrants_count >= max_entrants THEN
raise_application_error(-21010, 'Max number of Entrants Reached');
END IF;
См .: http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/errors.htm#sthref2006
РЕДАКТИРОВАТЬ: Обычно плохая идея, чтобы вставки молча терпели неудачу (то, что вы просите) Вы также можете столкнуться с ошибками изменяющейся таблицы, если попытаетесь удалить запись в триггере после вставки.
Вместо этого просто не вставляйте запись для начала.
Один из способов добиться этого - добавить что-то вроде этого в конец оператора вставки:
WHERE EXISTS SELECT null FROM
(SELECT COUNT(*) entrants_count FROM application
WHERE id_speciality = :new.id_speciality) a,
(SELECT max_students_number max_entrants
FROM speciality WHERE id_speciality = :new.id_speciality) s
WHERE a.entrants_count < s.max_entrants
Это должно только выполнить оператор вставки, когда entrants_count