mybatis+spring注解式事务的问题 1C

如何来判断事务对数据库执行无影响(就是更新或者删除时没有到达目的)时,进行提示和事务回滚?各位大神请发表意见。。。

6个回答

可以在同一个事务执行多条更新语句,在多条更新语句中间插入一条异常语句(可以自己抛出throw new RuntimeExcetpion(),或者执行除零操作),然后看数据库有没有更新。
比如:
update student1 set...
update student2 set...
update student3 set...
int a = 9 / 0;
update student4 set...

不是由异常才回滚么 catch 里面 捕捉啊

qq_20507067
石桥曾某 我用的是注解式事务,那也需要判断对数据影响的行数把?
3 年多之前 回复

默认情况下,数据库处于自动提交模式。每一条语句处于一个单独的事务中,在这条语句执行完毕时,如果执行成功则隐式的提交事务,如果
执行失败则隐式的回滚事务。

可以在java中使用查询数据库搜索这条数据对比是否存在。就知道有没有执行了

  • 注解事务默认情况是是碰到RuntimeException就会回滚,如果没打到目的,你抛个运行时异常就可以了
qq_20507067
石桥曾某 那也需要判断对数据影响的行数把?
3 年多之前 回复

默认情况下,数据库处于自动提交模式。每一条语句处于一个单独的事务中,在这条语句执行完毕时,如果执行成功则隐式的提交事务,如果
执行失败则隐式的回滚事务。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐