MYSQL | ERROR 1305(42000) SAVEPOINT *** DOES NOT EXIST

autocommit模式:在开启情况下,对于每条statement来说,都会自动形成一个commit,也就是会即时对开始和结束一个事务。所以,当出现rollback to savepoint出现这个错误时,第一步是检查autocommit模式是否有开启。

select @@autocommit;

1则代表开启,0则代表未开启。

如果需要关闭,则输入以下代码

set autocommit = 0 ;

这时候,就是必须对每一个事务都要手动开始或保存。代码为

START TRANSACTION
# OR
BEGIN

要结束的话,就要comment或者rollback来结束这个阶段

在autocommit开启的情况下,也可以人为地,将好几个statement合在一起,

这时也是用上一段代码,这时候commit或者rollback的就是好几条statement了。

猜你喜欢

转载自www.cnblogs.com/lxwphp/p/11348530.html