T-SQL高级应用.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
T-SQL高级应用

第12章 T-SQL高级应用 教学课件 目录 本章目标 理解:事务的概念、特性和应用模式 掌握:显式控制事务的方法和T-SQL语句以实现数据的一致性 理解:游标的概念 掌握:使用游标的方法和T-SQL语句以实现结果集的逐行处理 本章内容 12.1 事务 12.2 游标 12.1 事务 问题: 银行帐户表:从一个帐户向另一个帐户转帐。 2步操作:转出、转入 2步操作必须是一个整体,如何实现? 事务(Transaction):是包括一系列操作的一个逻辑工作单元。 12.1.1 事务的特性 12.1.2 事务的控制 12.1.3 事务的模式 12.1.1 事务的特性 引例: 【例12-1】建立一个事务tran_st1,该事务包含2个操作:第一个操作修改学生表student中的数据,将学号为“2005010101”的学生的家庭地址更改为“北京市昌平区”;第二个操作修改学生表student中的数据,将学号为“2005010102”的学生的班号更改为“0102”。 要求:2个操作作为一个单元执行 --第一个操作 UPDATE student SET st_address = ‘北京市昌平区’ WHERE st_id = 2005010101 --第二个操作 UPDATE student SET st_clid = 0102 WHERE st_id = 2005010102 IF @sql1_err = 0 and @sql2_err = 0 BEGIN COMMIT TRANSACTION tran_student_1 PRINT 操作执行成功,事务提交 END ELSE BEGIN ROLLBACK TRANSACTION tran_student_1 IF @sql1_err 0 PRINT 第一个操作执行失败,事务回滚 IF @sql2_err 0 PRINT 第二个操作执行失败,事务回滚 END 12.1.1 事务的特性(续) 事务(Transaction):是包括一系列操作的一个逻辑工作单元。 系统将组成事务的一系列操作作为一个整体进行处理: 当事务执行成功时,该事务中的所有操作均会提交,成为数据库中的永久组成部分; 当事务执行错误时,该事务中的所有操作均会回滚。 12.1.1 事务的特性(续) 事务具有ACID属性 : 原子性(Atomicity):事务是一个逻辑工作单元,事务中的操作要么全部执行,要么全部不执行。 一致性(Consistency):事务必须遵守数据库中的完整性规则,使数据从一个一致性状态变化到另一个一致性状态。 隔离性(Isolation):数据库管理系统允许多个事务并发执行,但是并发执行的各个事务之间不能互相干扰。 持久性(Durability) :事务完成后,它对数据库中数据的修改应该是永久保存的。 12.1.2 事务的控制 Step1:启动事务 BEGIN TRAN[SACTION] [ transaction_name | @tran_name_variable [ WITH MARK [ description ] ] ] Step2_1:提交事务 指当事务执行过程中没有遇到错误时,事务中的所有操作在数据库中都将永久有效,并释放占用的系统资源。 COMMIT [ TRAN[SACTION ] [ transaction_name | @tran_name_variable ] ] Step2_2:回滚事务 指当事务执行过程中遇到错误时,事务中的所有操作都被回滚到事务执行位置的状态,并释放占用的系统资源。 ROLLBACK [ TRAN[SACTION ] [ transaction_name | @tran_name_variable| savepoint_name | @savepoint_variable ] ] 设置保存点 SAVE TRAN[SACTION ] { savepoint_name | @savepoint_variable } @@error 返回最近执行的T-SQL语句的错误代码。如果语句执行成功,则@@ERROR返回值为0;如果语句执行失败,则@@ERROR返回错误信息代码。 12.1.3 事务的模式 3种模式 : 1、显式事务:是指由用户定义事务的启动和结束的事务 。 2、隐式事务:是指在当前事务结束后,自动启动新的事务。无需BEGIN TRANSACTION语句标识事务的开始,但需要使用COMMIT或ROLLBACK语句标识事务结束。 3、自动事务:每条单独的T-SQL语句

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档