JDBC入门中,关于事务还是有几点疑问。
1、关于断电是不是这样理解?
(1)如果Java服务器断电、MySQL不断,Java没执行到conn.commit()、conn.rollback()——则数据库什么都不做;
(2)如果Java服务器断电、MySQL不断,Java执行到conn.commit()、conn.rollback()——则数据库正常调用redo日志提交、undo日志回滚;
(3)如果Java服务器不断电、MySQL断,Java执行到conn.commit()、conn.rollback()——则数据库正常调用redo日志提交、undo日志回滚。
2、关于事务开启是不是这样理解?
(1)1条查询,要开事务——因为可能有其他事务做修改;
(2)多条查询,要开事务——因为可能有其他事务做修改;
(3)1条修改,要开事务——因为涉及修改;
(4)多条修改,要开事务——因为涉及修改。
3、关于封锁级别是不是这样理解?
(1)read uncommitted——购票,用了这种级别就不会出现其他数据异常
(2)read committed——转账,用了这种级别就不会出现其他数据异常
(3)repeatable read——购物,用了这种级别就不会出现其他数据异常
(3)serializable——没用
4、MySQL封锁级别作用域是新建的一个查询页面,其他新建的查询页面无效;那在Java里设置的作为范围是什么?
正在回答
同学你好,
1、添加如下代码设置事务的隔离级别为READ_UNCOMMITTED
注:Read uncommitted是mysql innodb引擎的最低事务隔离级别。并不能保证并发情况下的数据的安全性,所以不建议使用~
2、如下这里已经传入sql了
祝学习愉快~
相似问题
登录后可查看更多问答,登录/注册
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星