日期:2014-05-20  浏览次数:20634 次

JDBC的回滚操作怎么没用?
将数据库中名为 李小勇 的学生更新成  李勇 ,然后执行回滚,课到数据库去查看,姓名却已经改了,回滚语句没用。弄了一下午了,求大神帮忙


------解决方案--------------------
你都提交了,还怎么回滚
------解决方案--------------------
代码写的有问题啊先try{捕获异常}catch{处理异常}然后finally{关闭连接},如果没有异常就提交,如果出现异常在catch代码块里面回滚就可以了。
------解决方案--------------------
代码应该是
try{commit}catch{rollback}finally{closeConnection}

------解决方案--------------------
事务是在Java这端控制的,你的update如果已经使数据库发生了变化,就没法回滚了!
事务基本原理是把你的sql语句缓存下来,当你commit之后,之前缓存的sql就一条一条执行,提交到数据库。
在commit之前,你可以用回滚。就是之前缓存的sql会取消掉。