MyISAM不支持事务,但如果遇到数据库错误,怎么实现回滚

2025-04-08 13:49:18
推荐回答(4个)
回答1:

自己写sql语句执行还原操作,建议修改表引擎支持事务。

回答2:

MyISAM实际上是对整张表加上了写锁,即使出错,也只是当前语句不执行而已。

回答3:

如果MyISAM出错,则该条语句不执行。所以说,假如有3条语句要执行,依次分别是 A (更新 InnoDB 表) B (更新 MyISAM 表) C (更新 InnoDB 表),那么:如果B语句出错,则它本身不会执行,无影响,调用Rollback的时候将会回滚A语句。

回答4:

很少有数据库会不支持回滚吧,你是用的mysql吗?如果是的,请把它默认的存储引擎改为InnoDB类型的就可以回滚了