网站大量收购闲置独家精品文档,联系QQ:2885784924

数据库的查询与视图.ppt

  1. 1、本文档共127页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.4 游标——游标的概述 服务器游标 键集驱动游标 :由一套被称为键集的唯一标识符(键)控制。键由以唯一方式在结果集中标识行的列构成。键集是游标打开时来自所有适合SELECT语句的行中的一系列键值。键集驱动游标的键集在游标打开时建立在tempdb中。对非键集列中的数据值所做的更改,在用户滚动游标时是可见的。在游标外对数据库所做的插入在游标内是不可见的,除非关闭并重新打开游标。 4.4 游标——游标的使用 游标的使用要遵循以下过程: 声明游标→打开游标→读取数据→关闭游标→删除游标 声明游标 DECLARE 游标名称 [INSENSITIVE] [SCROLL] CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ] FOR select语句 [ FOR UPDATE [ OF 列名 [ ,...n ] ] ] 4.4 游标——游标的使用 参数说明 INSENSITIVE:定义一个游标,以创建将由该游标使用的数据的临时复本。对游标的所有请求都从tempdb中的该临时表中得到应答;因此,在对该游标进行提取操作时返回的数据中不反映对基表所做的修改,并且该游标不允许修改。如果省略INSENSITIVE(任何用户),对基表提交的删除和更新都反映在后面的提取中。 SCROLL:指定所有的提取选项(FIRST、LAST、PRIOR、NEXT、RELATIVE、ABSOLUTE)均可用。如果未指定SCROLL,则NEXT是唯一支持的提取选项。如果指定SCROLL,则不能也指定FAST_FORWARD。 4.4 游标——游标的使用 参数说明 LOCAL与GLOBAL:说明游标的作用域。LOCAL说明所声明的游标是局部游标,其作用域为创建它的批处理、存储过程或触发器,该游标名称仅在这个作用域内有效。GLOBAL说明所声明的游标是全局游标,它在由连接执行的任何存储过程或批处理中都可以使用,在连接释放时游标自动释放。 FORWARD_ONLY和SCROLL:说明游标的移动方向。前者表示游标只能从第一行滚动到最后一行(仅支持FETCH中的NEXT选项);后者表示游标可以前滚、后滚(支持FIRST、LAST、PRIOR、NEXT、RELATIVE、ABSOLUTE)。 4.4 游标——游标的使用 参数说明 STATIC | KEYSET | DYNAMIC | FAST_FORWARD :说明游标的类型。 READ_ONLY | SCROLL_LOCKS | OPTIMISTIC :说明游标或基表的访问属性。 TYPE_WARNING:指定如果游标从所请求的类型隐性转换为另一种类型,则向客户端发送警告消息。 FOR UPDATE:指出游标中可以更新的列。若有参数OF列名[,…n],则只允许修改列出的列,否则允许修改所有列(在未指定READ_ONLY属性的前提下)。 4.4 游标——游标的使用 【例58】声明一个标准游标,结果集为“学生”表中所有的男同学。 Use xscj declare 男同学 cursor For select * from 学生表 where 性别=1 【例59】声明一个名为总学分的动态游标,结果集中包括学号、姓名和总学分字段,其中总学分字段值可进行修改。 Use xscj declare 总学分 cursor Dynamic For select 学号,姓名,总学分 from 学生表 For update of 总学分 4.4 游标——游标的使用 打开游标 声明游标后,要使用游标从中提取数据,就必须先打开游标。 在T-SQL中,使用OPEN语句打开游标,其格式为: OPEN { { [ GLOBAL ] 游标名称 }| 游标变量的名称 } 读取游标 T-SQL通过FETCH语句来读取结果集数据,其格式为: FETCH [ [ NEXT | PRIOR | FIRST | LAST | ABSOLUTE { n | @nvar } | RELATIVE { n | @nvar } ] FROM ] { { [ GLOBAL ] 游标名称} | @游标变量名称 } [ INTO @变量名 [ ,...n ] ] 4.4 游标——游标的使用 关闭游标 游标使用完后要及时关闭,以释放当前结果集或解除定位游标行尚的游标锁定。 在T-SQL中,关闭游标使用CLOSE语句,其格式为: CLOSE { { [ GLOBAL ] 游标名称 }|

文档评论(0)

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

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

1亿VIP精品文档

相关文档