欢迎光临散文网 会员登陆 & 注册

Java学习笔记:事务简介和个人的生动形象具体详细易懂的理解【诗书画唱】

2020-07-09 22:28 作者:诗书画唱  | 我要投稿

事务处理

事务简介:

事务处理用于维护数据库的完整性它保证批

量的SQL语句要么完全执行,要么完全不执行


因为当我们要执行多条SQL语句时,如果只有前面

几条语句执行成功,但是后面的SQL语却执行失

败的话,那么数据库中就会残留执行成功的数据,

而执行失败的语句则自然不会有数据残留,但是

这却会导致数据不匹配、不完整


总之一句话:事务是指一组操作,要么都执行成

功,要么都执行失败。


事务的特性:

1)原子性:一组操作,要么都执行成功,要

么都执行失败。

个人理解:原子是不可分割的,事务在执行过程不可以被中断,“不可被中断”就类似于“原子不可被分割”,所以这种特性被命名为“原子性”。这里的”操作“一般指的是“SQL语句”的执行,即为运行等。

2)隔离性:一个事务的操作没有完成之前,其

他事务是不能对这个事务处理的结果进行操作的,

需要牺牲速度。

个人理解:每个事务就像隔离一切的墙壁一样,只有打破一面墙,才可打破另一面墙,”操作完成“就像打破墙一样。所有才叫隔离性。

3) 一致性:事物发生和发生后的总金额依然

匹配。

个人理解:一个事务必须使数据库从一个一致性状态变换到另一个一致性状态,就是状态总和相等,类似于能量守恒等,变化前和变化后的各自的总和都相同,而“一致”有“相同”的意思,所有这个属性叫“一致性”。



首先回顾一下一致性的定义。 所谓一致性, 指的是数据处于一种有意义的状态这种状态是语义上的而不是语法上的。最常见的例子是转帐。例如从帐户A转一-笔钱到帐户B上, 如果帐户A.上的钱减少了,而帐户B.上的钱却没有增加,那么我们认为此时数据处于不一致的状态。


4)持久性:事务产生的影响是不能撤销的。

个人理解:事务产生的影响是不能撤销的,影响是持久的,所以这个属性叫“持久性”。




事务的开启和关闭

Connection c=DBUtils.getCon();

c. setAutoCommit(false)//设置连接为手动提交

c.commit();//在执行完操作后提交事务

c.rollback();//出现异常执行


个人的理解:

auto: 英 [ˈɔːtəʊ]  美 [ˈɔtoᴜ]  n.汽车。(开汽车大多要用手去动)

automatic 英 [ˌɔːtəˈmætɪk]   美 [ˌɔːtəˈmætɪk]  adj.自动的;

Commit:英 [kəˈmɪt]   美 [kəˈmɪt]  v.做出(错或非法的事);犯(罪或错等);自杀;承诺,保证(做某事、遵守协议或遵从安排等);提交。“承诺”就是“提交决心”等。

roll 英[rəʊl] [roʊl] v.滚动

back [bæk] [bæk] adv.向后;






Java学习笔记:事务简介和个人的生动形象具体详细易懂的理解【诗书画唱】的评论 (共 条)

分享到微博请遵守国家法律