Ich habe eine gespeicherte Prozedur, um ein Eingabeskript zu nehmen und Tabellen zu aktualisieren. Es schreibt auch in eine Tabelle mit Update-Verlauf. Ich habe sie mit der Transaktion eingewickelt.Skript mit Transaktion in Mysql ausführen
START TRANSACTION;
PREPARE action from @upgradeScript;
EXECUTE action;
INSERT INTO database_history (version, changes)
VALUES (Version, comments);
COMMIT;
Ich habe @upgradeScript zu:
"ALTER TABLE t ADD column test1 varchar(45) NOT NULL;"
Wenn jedoch der Einsatz ausfällt, es Rollback keine Änderungen in @upgradeScript.
Ich weiß warum und kann jemand helfen. Vielen Dank.
Es ist so traurig. MS SQL Server unterstützt es. Es ist sehr nützlich, wenn Sie eine Datenbank ändern. – Frank