Mysql
 sql >> Base de données >  >> RDS >> Mysql

Les déclencheurs MySQL ne peuvent pas mettre à jour les lignes de la même table à laquelle le déclencheur est affecté. Solution de contournement suggérée ?

Vous pouvez en fait remonter les lignes dans le même tableau que le déclencheur. Le fil auquel vous avez lié a même la solution.

Par exemple :

TestTable ( id / lastmodified / random )

create trigger insert_lastmod
before insert on TestTable
for each row
set NEW.lastmodified = NOW();

insert into TestTable ( `random` ) values ( 'Random' );

select * from TestTable;
+----+---------------------+---------------------+
| id | lastmodified        | random              |
+----+---------------------+---------------------+
|  1 | 2010-12-22 14:15:23 | Random              |
+----+---------------------+---------------------+