Zamiast wyzwalacza możesz napisać własne proste zapytanie, aby sprawdzić „ograniczenia” przed wstawieniem. Wypróbuj:
INSERT INTO member_infos
SELECT 1, 'Timothy', 'secret', 'example@sqldat.com', 5, 0
FROM dual
WHERE (SELECT COUNT(*) FROM member_infos WHERE Type_ID = 5)
<
(SELECT Member_Limit FROM member_types WHERE ID = 5)
Kiedyś sprawdzałem w przypadku Type_ID =5. To ignoruje, jeśli kryterium liczby nie jest spełnione i wstawia tylko, jeśli liczba elementów członkowskich w member_info z typem id =5 jest mniejsza niż limit ustawiony w member_types stół