ch10游标及事务.pdf

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

第 10 章 游标及事务 教学提示:游标(Cursor)是允许用户从查询结果的记录集中,逐条逐行地进行记录访问 的数据处理机制;事务(Transaction)是由对数据库的若干操作组成的一个单元,这些操作要 么都完成,要么都取消(如果在操作执行过程中不能完成其中任一操作) ,从而保证数据修 改的一致性,并且在系统出错时确保数据的可恢复性。 教学目标:通过本章的学习,读者应该掌握游标的概念及其操作、事务的概念及事务控制。 10.1 游 标 由 select 语句查询的结果是一个记录集,即由若干条记录组成的一个完整的单元。在 实际应用中常常需要从这种记录集中逐行逐条进行访问的处理机制。如:在统计某班某课 程学生成绩分布的查询结果集中,我们希望逐行访问记录,以便知道每个同学这门课的分 数是多少,据此判断成绩是优、良、中、及格还是不及格。使用游标便可解决这类问题。 10.1.1 游标的概念 1. 游标的定义 游标是允许用户能够从 select 语句查询的结果集中,逐条逐行地访问记录,可以按照 自己的意愿逐行地显示、修改或删除这些记录的数据访问处理机制。游标可以理解为数据 表记录逐行访问(移动当前记录和在当前记录上进行访问) 的位置指针。 2. 使用游标的步骤 (1) 声明游标: declare 游标名 cursor for select 语句 (2) 打开游标: open 游标名 (3) 处理数据: ① 移动到当前行并读取数据: fetch 游标名 [into @变量名,...] ② 删除当前行数据: delete from 表或视图名 where current of 游标名 ③ 修改当前行数据: update from 表或视图名 set 列名=表达式,... where current of 游标名 ·200 · SQL Server 数据库管理与开发教程与实训 (4) 关闭游标: close 游标名 (5) 释放游标: deallocate 游标名 3. 游标的类型 (1) Static(静态):当一个用户正在逐条访问查询结果时,如果其他人正使用同一个数据表修 改记录,那么该用户不会看到该修改。他所看到的数据记录是他运行open 语句时的记录内容。 (2) Dynamic(动态) :在接收到查询的结果之后,记录会不断地被更新,以便能够实时看 到别人对该记录所做的修改。这个游标是最灵活的,但是也需要较大的系统开销和资源。 (3) Forward Only(只进) :只能前进,从前向后一条一条移动记录指针来访问记录。 (4) Scroll(滚动) :允许向前、向后,一条或多条滚动记录指针来访问记录。 10.1.2 声明游标 Transact-SQL 扩展语法格式: DECLARE 游标名 CURSOR [LOCAL | GLOBAL] [FORWARD_ONLY | SCROLL] [STATIC | KEYSET | DYNAMIC | FAST_FORWARD] [READ_ONLY | SCROLL_LOCKS | OPTIMISTIC] FOR SELECT 语句 [FOR UPDATE [OF 列名 [,...N]]] 其中: (1) 游标名:游标名称,游标命名必须符合标识符规则,不能超过 128 个字符。 (2) select 语句:用来定义游标结果集的标准 select 语句,且不允许使 compute、compute by 、for browse 和 into 子句。 (3) local:指定该游标的作用域对在其中创建它的批处理、存储过程或触发器是局部的。 (4) global:指定该游标的作用域对连接是全局的。在由连接执行的任何存储过程或批 处理中,都可以引用该游标名称。该游标仅在连接断开时自动释放。 (5) forward_only:只

文档评论(0)

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

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

1亿VIP精品文档

相关文档