sql >> Database >  >> RDS >> Mysql

FOUT 1305 (42000):SAVEPOINT ... bestaat niet

Aangezien dit het beste antwoord op Google is bij het zoeken naar "savepoint bestaat niet", zal ik mijn oplossing hier ook toevoegen.

Ik had een TRUNCATE statement binnen de code uitgevoerd in mijn transactie, die een impliciete commit veroorzaakte en dus de transactie beëindigde. Het creëren van een savepoint buiten een transactie veroorzaakt geen fout, het wordt alleen niet uitgevoerd. Dit betekent dat de eerste keer dat je merkt dat er iets mis is, is wanneer je je savepoint probeert vrij te geven of terug te draaien.

Dit is de volledige lijst met statements die een impliciete commit veroorzaken: https://dev.mysql.com/doc/refman/5.7/en/implicit-commit.html



  1. jqGrid - Unieke ID voor nieuwe rij

  2. Gebruikersnaam, Wachtwoord, Salting, Encrypting, Hash - Hoe werkt het allemaal?

  3. Hoe de bovenliggende tabel, referentietabel, naam van de externe sleutelbeperking en kolommen in SQL Server te krijgen - SQL Server / TSQL-zelfstudie, deel 71

  4. PostgreSQL-beveiliging standaardiseren in multi-cloudomgevingen