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

Creazione di trigger dinamici MySQL nella procedura memorizzata

Karthikeyano,

Non è possibile creare un trigger all'interno della stored procedure. Trigger è un'istruzione DDL che non è consentita all'interno delle procedure.

" ERRORE 1303 (2F003):Impossibile creare un TRIGGER dall'interno di un'altra routine memorizzata "

Per risolvere il tuo scopo puoi fare quanto segue:

  • Prendi i valori correnti dalla tabella all'interno della variabile.

  • Scrivi semplicemente una query di aggiornamento all'interno della tua procedura, quindi controlla se il valore è aggiornato o meno da "ROW_COUNT()".

  • Confronta il nuovo valore con il vecchio valore, di modificato, quindi inserisci manualmente nella tabella change_log.