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

第九章_T-SQL编程与应用2.ppt

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

9.6 游标 9.6.1 游标概念 游标(Cursor) : 游标是一种处理数据的方法,游标使得SQL Server语言可以逐行处理结果集中的数据; 主要用在存储过程、触发器和 T-SQL脚本中。 可以把游标看成一种指针,可以指向结果集中的任意位置,它允许用户对指定位置的数据进行处理,可以把结果集中的数据放在数组、应用程序中或其它地方。 游标把作为面向集合的数据库管理系统和面向行的程序设计两者联系起来,才使两个数据处理方式能够进行沟通。 第九章 T-SQL编程与应用 SQL Server 2008 9.6 游标 游标包括以下两个部分 游标结果集(Cursor Result Set)由定义该游标的SELECT语句返回的行的集合。 游标位置(Cursor Position)指向这个集合中某一行的指针。 第九章 T-SQL编程与应用 SQL Server 2008 游标 游标具有以下优点 允许定位在结果集的特定行。 从结果集的当前位置检索一行或多行。 支持对结果集中当前位置的行进行数据修改。 为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。 提供脚本、存储过程和触发器中使用的访问结果集中的数据的T-SQL语句。 SQL Server 2008支持以下两种请求游标的方法 T-SQL:使用T-SQL语句定义的游标。 数据库应用程序编程接口(Application Programming Interface,API)游标函数。 第九章 T-SQL编程与应用 SQL Server 2008 9.6.2 使用游标 使用游标(CURSOR)的步骤如下。 声明游标。在使用游标之前,首先需要声明游标。 打开游标。打开一个游标意味着在游标中输入了相关的记录信息。 获取记录信息。首先将游标当前指向的记录保存到一个局部变量中,然后游标将自动移向下一条记录。将一条记录读入某个局部变量后,就可以根据需要对其进行处理了。 关闭游标。释放游标锁定的记录集。 释放游标。释放游标自身所占用的资源。 游标 1.声明游标 游标在使用之前,必须先声明。 声明游标语句语法格式如下: DECLARE CURSOR 游标名 [INSENSITIVE][SCROLL] CURSOR FOR SELECT语句 [FOR READ ONLY|UPDATE [OF 列名1[,…,n]]] 参数说明: INSENSITIVE:在TempDB中建立创建由该游标使用数据的临时表,并对其进行任何操作。 SCROLL:FIRST、LAST、PRIOR、NEXT(默认)、RELATIVE、ABSOLUTE。 SELECT语句:定义游标结果集的标准SELECT语句。 READ ONLY:定义只读游标,不能修改数据。 UPDATE [OF 列名1[,…,n]]:定义游标中可更新的列。 第九章 T-SQL编程与应用 SQL Server 2008 表1 Declare命令中SCROLL的取值 SCROLL选项 含义 FIRST 提取游标中的第一行数据 LAST 提取游标中的最后一行数据 PRIOR 提取游标当前位置的上一行数据 NEXT 提取游标当前位置的下一行数据 RELATIVE n 提取游标当前位置之前或之后的第n行数据 (n正,往下,n负,往上) ABSULUTE n 提取游标中的第n行数据 游标 2.打开游标 打开游标使用OPEN语句,其语法格式如下: OPEN [GLOBAL] 游标名|游标变量名 参数说明: GLOBAL选项是指定其后的游标为全局游标。 注意: 使用OPEN语句打开游标后,游标位置位于查询结果集的第一行。 只能打开已经声明但尚未打开的游标。 第九章 T-SQL编程与应用 SQL Server 2008 游标 3.提取数据 在打开游标后,利用FETCH语句从查询结果集中提取数据。 使用FETCH语句一次可以提取一条记录。 FETCH语句的语法格式如下: FETCH [[NEXT|PRIOR|FIRST|LAST |ABSOLUTE n|@nvar |RELATIVE n|@nvar] FROM] [GLOBAL] 游标名|游标变量名 [INTO @变量名[,…,n]] 第九章 T-SQL编程与应用 SQL Server 2008 游标 FETCH语句参数说明: NEXT:提取紧跟当前行之后的结果行,并且将当前行向后移一行。 PRIOR:提取紧临当前行前面的一行,并且将当前行向前移一行。 FIRST:提取游标中的第一行并将其设置为当前行。 LAST:提取游标中的最后一行并将其设置为当前行。 ABSOLUTE n|@nvar:如果n或@nvar为正(负)数,提取从游标头开始(尾之前)的第n行,并将返回的行变成新的当前行;如果n

文档评论(0)

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

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

1亿VIP精品文档

相关文档