Mysql
 sql >> Database >  >> RDS >> Mysql

Inserimento condizionale MySql con valori dinamici

Invece di un trigger potresti scrivere la tua query semplice per controllare i "vincoli" prima dell'inserimento. Prova:

INSERT INTO member_infos
SELECT      1, 'Timothy', 'secret', '[email protected]', 5, 0
FROM        dual
WHERE       (SELECT COUNT(*) FROM member_infos WHERE Type_ID = 5) 
            < 
            (SELECT Member_Limit FROM member_types WHERE ID = 5)

Ho usato per controllare in caso di Type_ID =5. Questo ignora se il criterio di conteggio non è soddisfatto e inserisce solo se il conteggio dei membri delle voci in member_info con tipo id =5 è inferiore al limite impostato nel tuo member_types tabella