Wer hat es verbockt?
bearbeitet von RaketenwilliHab jetzt mal gesucht, wer oder was die Verwirrung verursacht hat.
Wer hat es verbockt?
> [Denn sonst wird die normalerweise eröffnete Transaktion (mit den bis dahin erfolgreichen, **aber insgesamt unvollständigen Änderungen**) am Ende der Verbindung, also des PHP-Skriptes automatisch „comittet“, also übernommen: „autocommit = ON“](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_autocommit).
Ah. **Da war ich richtig böse falsch.** Ohne eigene Transaktion oder `set autocommit=0` wird jede Änderung einzeln, sofort, dauerhaft und für alle übernommen („commited“).
> Bei einem - offenbar gewünschtem - Nichtabbruch des Skriptes ist es auch notwendig, das ROLLBACK-Kommando an die Datenbank zu senden.
Das setzt also das voraus, was ich tun würde, wenn ich mehrere Änderungen an der Datenbank nur vornehmen wöllte, wenn alles fehlerfrei durchläuft: automit setzen oder eigene Transaktion.
Das hätte ich brav gleich dazu schreiben sollen,.
Wer hat es verbockt?
bearbeitet von RaketenwilliHab jetzt mal gesucht, wer oder was die Verwirrung verursacht hat.
Wer hat es verbockt?
> [Denn sonst wird die normalerweise eröffnete Transaktion (mit den bis dahin erfolgreichen, **aber insgesamt unvollständigen Änderungen**) am Ende der Verbindung, also des PHP-Skriptes automatisch „comittet“, also übernommen: „autocommit = ON“](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_autocommit).
Ah. Da war ich falsch. Ohne eigene Transaktion oder `set autocommit=0` wird jede Änderung sofort dauerhaft und für alle übernommen („commited“).