Ich habe 2 Beispiele für Liquibase Changesets, wo die zweite Aussagen versagen (versucht, einen Datensatz einfügen mit vorhandenen Primärschlüssel), aber die ersten, die erfolgreich sind:Liquibase Transaktionsdemarkation
Failing/keine Aufzeichnung in databasechangelog:
--changeset yura:2
insert into test2 values (4, 'test4');
insert into test2 values (2, 'test2');
teilweise geschrieben, kein Eintrag in databasechangelogg:
--changeset yura:2
insert into test2 values (4, 'test4');
ALTER TABLE test2 ADD name varchar(50);
Wenn ich versuche, diese Aussagen auf MySql direkt ausführen können, ist das Verhalten c onsistent für beide, weil MySql (InnoDB) jede Anweisung in einer separaten Transaktion umschließt. Warum ist Liquibase nicht konsistent?
Überprüfen Sie auf "Autocommit". Außerdem wird 'ALTER' jede Transaktion beenden. –