Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Salvando o USER_ID de um usuário que excluiu um registro com um gatilho no MySQL


Defina uma variável de sessão como user_id e faça com que o gatilho cancele a exclusão se a variável de sessão user_id não tiver um valor user_id nela.

Consulta para definir user_id na sessão do MySQL:
SET @user_id = <value of user_id>

Nova exclusão:
CREATE TRIGGER `db`.`delete_history_trigger` BEFORE DELETE ON `db`.`payments`
   FOR EACH ROW BEGIN
      INSERT INTO `payments_history` select *, 'delete', NOW(), USER(), @user_id from `payments` where `PAYMENT_ID` = OLD.`PAYMENT_ID`;
   END
//