数据库事务【讲座】.pptVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库事务【讲座】

数据库事务 演讲人:xxx 经典银行转账流程 1.源账户扣除转账金额; 2.目标账户增加转账金额; 3.为源账户生成一笔转账记录; 4.为目标账户生成一笔转账记录; 正常的情况下,这些操作将 顺利进行,最终转账成功, 相关的所有数据库信息也成 功地更新。但是,如果在这 一系列过程中任何一个环节 出了差错,数据库中所有信 息都必须保持交易前的状态不变。 数据库事务 正是用来保证这种情况下交易的平稳性和可预测性的技术。 事务的四个原则 1.原子性 数据库能够进行操作的最小的逻辑单元。 2.一致性 要么全都执行成功,要么全都失败。 3.隔离性 事务不会查看中间状态的数据。 4.持久性 事务完成之后,它对于系统的影响是永久性的。 事务与一致性 不加控制的并发存取会产生以下几种错误: 1 丢失修改 2 读的不可重复性 3 光标带来的当前值的混乱 4 脏读 5 未释放修改造成连锁退出 6 一事务在对一表更新时,另外的事务却修改或删除此表的 定义。 并发控制 数据库系统一个明显的特点是多个用户共享数据库资源,尤其是多个用户可以同时存取相同数据。 串行控制:如果事务是顺序执行的,即一个事务完成之后,再开始另一个事务。 并行控制:如果DBMS可以同时接受多个事务,并且这些事务在时间上可以重叠执行。 四种事务隔离级别 1.Serializable:完全看不到其他事务所作的更新,串行化(8)。 2.Repeatable Read:可以看到其他事务已经提交的新插入记录,但是不能看到其他事务对已有记录的更新,可重复读(4)。 3.Read Committed:可以看到其他事务的已提交更新,读已提交数据(2)。 4.Read Uncommitted:可以看到其他事务未提交更新,读未提交数据(1)。 设置隔离级别 session-factory !-- 设置JDBC的隔离级别 -- property name=hibernate.connection.isolation2/property /session-factory 开启事务代码示例 public void AddUserInfo(UserInfo userinfo){ Session s=null; Transaction tx=null; try{ s=HibernateUtil.getSession(); tx=s.beginTransaction(); s.save(userinfo); mit(); 事务的生命周期 ORACLE事务从COMMIT、ROLLBACK、连接到数据库或开始第一 条可执行的SQL语句时开始,到一条COMMIT、ROLLBACK语句或退出 数据库时结束。 总结 数据库事务就是为了保证数据的一致性,要么所有操作成功,要么全部取消。适用于过多保证事务成功的情况。 谢谢观赏 * * * * * * * *

您可能关注的文档

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档