OracleJavaEE实训教材系列数据库的设计与开发讲解.pptVIP

OracleJavaEE实训教材系列数据库的设计与开发讲解.ppt

  1. 1、本文档共238页,可阅读全部内容。
  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文档。上传文档
查看更多
什么是事务 在事务处理中,所有的数据操作步骤都必须被执行,或者说系统将永久性地保留这些成功操作(或丢弃无法成功的操作)。 * ACID 事务系统通常被描述为遵守ACID,“ACID”代表以下四种特性: 原子性 一致性 隔离性 持久性 * 事务控制语句 下列语句被用于显式地控制事务: START TRANSACTION或BEGIN COMMIT ROLLBACK SET AUTOCOMMIT * 启用提交模式 自动提交模式用于决定新事务如何及何时启动。 如果自动提交模式被启用,则单条SQL语句将缺省地开始一个新的事务。 当自动提交模式被启用时,事务仍然可以用START TRANSACTION语句来显式地启动。 * 禁用自动提交 如果没有启用自动提交,事务缺省地可以跨越多条语句。在这种情况下,事务可以用COMMIT和ROLLBACK语句来显式地提交或回滚。 * 控制自动提交模式 自动提交模式可以通过服务器变量AUTOCOMMIT来控制,该变量在会话级可用。 mysql SET AUTOCOMMIT = OFF; 或 mysql SET SESSION AUTOCOMMIT = OFF; 也可以使用变量符号来设置自动提交模式: mysql SET @@autocommit := 0; 还可以使用变量符号来查看是否已启用自动提交: mysql SELECT @@autocommit; * 事务演示一:回滚 下面的会话演示了ROLLBACK语句: mysql START TRANSACTION; mysql SELECT Name FROM City WHERE ID=3803; mysql DELETE FROM CITY WHERE ID=3803; mysql SELECT Name FROM City WHERE ID=3803; mysql ROLLBACK; mysql SELECT Name FROM City WHERE ID=3803; * 隔离级别 事务隔离级别决定了事务之间可见的级别。 当多个客户端并发地访问同一个表时,下面的一致性问题可能出现: 脏读取(Dirty Read) 不可重复读(Non-repeatable Read) 幻像读(Phantom Read) * 四个隔离级别 四个隔离级别,用以控制事务所做的修改,并通告其它并发出现的事务: 读未提交(READ UMCOMMITTED) 读已提交(READ COMMITTED) 可重复读(REPEATABLE READ) 串行化(SERIALIZABLE) * 隔离级别 * 设置隔离级别 为了在启动时设置服务器的缺省事务隔离级别,可使用transaction-isolation选项。该选项值应该是READ-UNCOMMITTED、READ-COMMITTED、REPEATABLE-READ或者SERIALIZABLE之一。 [mysqld] Transaction-isolation = READ-COMMITTED 隔离级别也可以在运行的服务器中动态设置,应使用SET TRANSACTION ISOLATION LEVEL语句,其语法模式是: SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL isolation-level 其中的isolation-level定义为: {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE} * 设置隔离级别 事务的级别可以设置为全局或会话级。 mysql SET TRANSACTION ISOLATION LEVEL READ COMMITTED; 这等同于: mysql SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED; 为了设置所有子连接的缺省级别,应使用GLOBAL关键字而不用SESSION: mysql SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED; * 查看隔离级别 为了查看当前隔离级别,可使用tx_isolation服务器变量: mysql SELECT @@tx_isolation; mysql SELECT @@global.tx_isolation, @@session.tx_isolation; * 事务演示二:并发与隔离 * 第十一章 视 图 目标 视图的定义及使用视图的原因 创建视图 检查视图 修改与删除视图 获取视图的元数据 * 什么是视图 视图是一种根据查询(也就是SELECT表达式)定义的数据库对象,用于获

文档评论(0)

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

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

1亿VIP精品文档

相关文档