Heb er een gevonden met een trigger:
Als u een ingewikkelde reeks invoegingen of updates heeft die in een transactie moeten gebeuren, kunt u deze in de applicatiecode doen, of
Je kunt één 'groot' blackhole
maken tabel met voldoende rijen om alle waarden te bevatten.
En maak een trigger zoals:
DELIMITER $$
CREATE TRIGGER ai_bh_table_each AFTER INSERT ON bh_table FOR EACH ROW
BEGIN
DECLARE lastid1 integer;
INSERT INTO table1 VALUES (null, new.field1, new.field2);
SELECT LAST_INSERT_ID() INTO lastid1;
INSERT INTO table2 VALUES (null, new.field3, lastid1);
....
END$$
DELIMITER ;
Als u een foutcontrolecode opneemt, kunt u zelfs transacties simuleren op engines die dit niet ondersteunen, zoals MyISAM.