操作mysql报错:Transaction rolled back because it has been marked as rollback-only

提问者:帅平 问题分类:数据库
项目测试阶段,发现某个功能不好使,查看日志发现报错:Transaction rolled back because it has been marked as rollback-only,如下图:
操作mysql报错:Transaction rolled back because it has been marked as rollback-only
请问这个怎么解决
1 个回答
蓝鲸少女与猫
蓝鲸少女与猫
这个错误信息报错可以理解成:事务被回滚了,因为它已经被标记了只能回滚。这种错一般发生在嵌套事务中,即内层事务出错,但是由于是否提交事务的操作由外层事务触发,于是乎内层事务只能做个标记,来设置当前事务只能回滚。紧接着它想抛出错误,但是由于被 try catch 了,于是乎正常执行后续的逻辑,等执行到最后,外层要提交事务了,发现当前事务已经被打了回滚的标记,所以提交失败,报了上面的错。
发布于:3个月前 (07-13) IP属地:四川省
我来回答