社区
Web 开发
帖子详情
事物回滚和不提交有和区别?
孤零落叶寒
2012-02-27 05:32:50
用事物操作数据库,如果我不提交和rollback有什么区别?对内存有影响吗?
...全文
996
18
打赏
收藏
事物回滚和不提交有和区别?
用事物操作数据库,如果我不提交和rollback有什么区别?对内存有影响吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fly707822
2013-12-19
打赏
举报
回复
受教了 今天突然遇到这个问题
五哥
2012-02-28
打赏
举报
回复
[Quote=引用 10 楼 henushang 的回复:]
不提交根本就是没有进行任何的操作,而回滚是因为在事物提交的过程中遇到了一些问题,取消刚才进行的操作,这区别是相当的明显的,lz不知道是不是真的不明白啊
[/Quote]
++1
孤零落叶寒
2012-02-28
打赏
举报
回复
[Quote=引用 12 楼 beiouwolf 的回复:]
在同一事务条件下,回滚和不提交,表现是一样的
但是还有些差别
事务处理,是将操作事件交给数据库(模拟)运行,直到commit操作,才使得修改实际产生效果,你可以看做是未提交事务都是处于一个临时库中进行
回滚是对于同一个事务,如果产生了错误,那么取消这个临时库中的操作,不对实际数据产生影响
最主要的区别在于,如果不回滚,这些临时操作会持续到这个个connection结束为止,也就是……
[/Quote]
多谢大哥
孤零落叶寒
2012-02-28
打赏
举报
回复
[Quote=引用 10 楼 henushang 的回复:]
不提交根本就是没有进行任何的操作,而回滚是因为在事物提交的过程中遇到了一些问题,取消刚才进行的操作,这区别是相当的明显的,lz不知道是不是真的不明白啊
[/Quote]
奥,明白了。多谢
孤零落叶寒
2012-02-28
打赏
举报
回复
[Quote=引用 9 楼 iisgirl 的回复:]
之所以要回滚,就是防止提交过程中出现dao访问异常,回滚是对于数据库层面而言的。
但是不提交,压根就不可能与数据库打交道。
[/Quote]
奥,明白了,多谢赐教
beiouwolf
2012-02-28
打赏
举报
回复
在同一事务条件下,回滚和不提交,表现是一样的
但是还有些差别
事务处理,是将操作事件交给数据库(模拟)运行,直到commit操作,才使得修改实际产生效果,你可以看做是未提交事务都是处于一个临时库中进行
回滚是对于同一个事务,如果产生了错误,那么取消这个临时库中的操作,不对实际数据产生影响
最主要的区别在于,如果不回滚,这些临时操作会持续到这个个connection结束为止,也就是虽然你看不到,但是临时库的操作依然存在,而回滚是即时生效,其实都是回滚了,只是时间点的不一样
赵Andy
2012-02-27
打赏
举报
回复
不提交根本就是没有进行任何的操作,而回滚是因为在事物提交的过程中遇到了一些问题,取消刚才进行的操作。
回滚以前可能进行过一些数据库插入删除更新,一回滚就回到从前,不提交就根本没有进行插入删除更新。
孤独人生
2012-02-27
打赏
举报
回复
不提交根本就是没有进行任何的操作,而回滚是因为在事物提交的过程中遇到了一些问题,取消刚才进行的操作,这区别是相当的明显的,lz不知道是不是真的不明白啊
昨日凡阳
2012-02-27
打赏
举报
回复
之所以要回滚,就是防止提交过程中出现dao访问异常,回滚是对于数据库层面而言的。
但是不提交,压根就不可能与数据库打交道。
孤零落叶寒
2012-02-27
打赏
举报
回复
[Quote=引用 5 楼 beiouwolf 的回复:]
在同一事务中来说,不提交相当于rollback
[/Quote]
谢谢大哥,看来表达能力太差,就您理解了。不提交和rollback他们对内存来说没区别吗?事物的临时操作不提交和回滚哪个可以快速释放垃圾?还有就是看网上事物例子,setAutoCommit设置false后,操作完事物又把默认提交方式设置成了true,之后就没其他操作了,我很纳闷,难道他们程序中就一个Connection?还是这有其他用?
孤零落叶寒
2012-02-27
打赏
举报
回复
[Quote=引用 1 楼 java_pengjin 的回复:]
你这问题问的太纠结了吧。该提交提交,该回滚回滚。不提交的话基本相当于什么都没干 这和你干了事又推倒重来本质没舍呢么区别 个人愚见
[/Quote]
在没成功的时候我不提交不行吗?为什么要回滚,又不是直接操作数据库?难道不会滚操作的临时表会在内存中不释放?
孤零落叶寒
2012-02-27
打赏
举报
回复
[Quote=引用 3 楼 yangxiaojun9238 的回复:]
提交了,说明事务成功了,如果事务之前没有成功,就考虑回滚,符合事务的原子性,要么都成功,要么全不成功
[/Quote]
没成功就回滚?但如果没成功我就不提交,他们有什么区别呢?
beiouwolf
2012-02-27
打赏
举报
回复
在同一事务中来说,不提交相当于rollback
LFDream
2012-02-27
打赏
举报
回复
[Quote=引用楼主 flyer_ren 的回复:]
用事物操作数据库,如果我不提交和rollback有什么区别?对内存有影响吗?
[/Quote]
如果你设置事务手动提交的话你不提交事务,那你操作了半天有用吗?还不是相当于你什么事都没有干,操作数据库就等于你没操作。rollback是保证数据同步的 , 如果某一步出现问题 ,你不rollback数据肯定不能完全保证一致,这能行么,尤其是安全性比较好的项目(比如:银行方面的项目)。
yangxiaojun9238
2012-02-27
打赏
举报
回复
提交了,说明事务成功了,如果事务之前没有成功,就考虑回滚,符合事务的原子性,要么都成功,要么全不成功
Phoenix Slade
2012-02-27
打赏
举报
回复
commit和rollback 看看
jamespengo
2012-02-27
打赏
举报
回复
你这问题问的太纠结了吧。该提交提交,该回滚回滚。不提交的话基本相当于什么都没干 这和你干了事又推倒重来本质没舍呢么区别 个人愚见
事物
例子(构件,开始,
提交
,
回滚
) c#
事物
例子(构件,开始,
提交
,
回滚
) ()
JAVA设置手动
提交
事务,
回滚
事务,
提交
事务的操作
主要介绍了JAVA设置手动
提交
事务,
回滚
事务,
提交
事务的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
详解Java的JDBC API中事务的
提交
和
回滚
主要介绍了Java的JDBC API中事务的
提交
和
回滚
,JDBC是Java用于和数据库软件连接的API,需要的朋友可以参考下
4.Spring中的JdbcTemplate,Spring中的的事务,
Spring中的JdbcTemplate,Spring中的的事务.。。。。。。。
XA 多数据源分布式
事物
实现 java
多数据源根据XA实现,分布式
事物
,通过统一
事物
开始,
事物
提交
,失败
事物
回滚
,直接就可以运行
Web 开发
81,092
社区成员
341,717
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章