Mysql
 sql >> Database >  >> RDS >> Mysql

ERRORE 1305 (42000):SAVEPOINT ... non esiste

Poiché questa è la risposta migliore su Google quando si cerca "il punto di salvataggio non esiste", aggiungerò anche la mia soluzione qui.

Avevo un TRUNCATE istruzione all'interno del codice eseguito nella mia transazione, che ha causato un commit implicito e quindi ha terminato la transazione. La creazione di un punto di salvataggio al di fuori di una transazione non causa un errore, semplicemente non verrà eseguito. Ciò significa che la prima volta che noterai che qualcosa non va è quando provi a rilasciare il tuo punto di salvataggio/ripristinalo.

Questo è l'elenco completo delle istruzioni che causano un commit implicito: https://dev.mysql.com/doc/refman/5.7/en/implicit-commit.html