Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Trigger können keine Zeilen in derselben Tabelle aktualisieren, der der Trigger zugewiesen ist. Vorgeschlagene Problemumgehung?

Sie können tatsächlich die Zeilen in derselben Tabelle wie der Trigger nach oben verschieben. Der verlinkte Thread hat sogar die Lösung.

Zum Beispiel:

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              |
+----+---------------------+---------------------+