- 1、本文档共120页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * 游标 什么是游标 SELECT语句一次返回很多元组,但有时需要对每个元组进行不同的处理。游标是为了处理SELECT语句的结果集。 游标(Cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。 游标有一个名字,用户可以通过游标逐一获取记录,并交付给主变量,交由主语言进一步处理。 * 游标 什么是游标 可以把游标看成一种指针,它既可指向当前位置,也可指向结果集中的任意位置 它允许用户对指定位置的数据进行处理,可以把结果集中的数据放在数组、应用程序或其它地方 游标的组成 游标结果集(Cursor Result Set) :定义游标的SELECT语句返回的行的集合。 游标的位置(Cursor Position) 指向这个集合中某一行的指针。 * 游标 游标的优点 允许定位在结果集的特定行。 从结果集的当前位置检索一行或多行。 支持对结果集中当前位置的行进行数据修改 可在脚本、存储过程和触发器中使用游标访问结果集中的数据。 * 游标 游标的使用 使用DECLARE CURSOR语句声明游标 使用OPEN语句打开游标 使用FETCH INTO语句从游标中提取数据 使用CLOSE语句关闭游标 使用DEALLOCATE语句释放游标 空否 空,即数据提取完毕 不空 * 游标 游标的创建 DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSOR FOR select_statement [FOR READ ONLY | UPDATE [OF column_name_list] INSENSITIVE 取出来的数据放到TEMPDB中,对基本表的改动不会反映到游标中 SCROLL 可以做更多的操作:FIRST、LAST、NEXT、RELATIVE和ABSOLUTE READ ONLY 不修改游标指向的数据 UPDATE [OF column_name_list] 修改游标指向的数据,可以只修改某些列,也可以修改所有的列。 * 游标 【例5-35】创建一个游标 DECLARE student_cursor CURSOR FOR SELECT SNO,SName FROM Student WHERE SCore =500 ORDER BY SNO FOR READ ONLY * 游标 游标的管理 打开游标。 OPEN 游标名 关闭游标。 CLOSE 游标名; CLOSE语句关闭已打开的游标,之后不能对游标进行读取等操作,但可以使用OPEN语句再次打开该游标。 释放游标。 DEALLOCATE 游标名删除定义游标的数据结构,删除后不可再用 * 游标 利用游标取数 游标打开后,游标位置位于结果集的第一行前,此时可从结果集中提取(FETCH)行。SQL Server将沿着结果集一行或多行向下移动游标位置,不断提取结果集中的数据,并修改和保存游标当前的位置,直到结果集中的行全部被提取 语法 FETCH {NEXT | PRIOR|FIRST|LAST|ABSOLUTE {N|V}|RELATIVE {N|V}}FROM Cursor_name[INTO @variale,,,,] * 游标 利用游标取数 游标的移动方向 NEXT:取下一行数据 PRIOR:取前一行数据 FIRST:取第一行数据 LAST:取最后一行数据 ABSOLUTE:按绝对位置取数据 RELATIVE:按相对位置取数据 存放被提取的列数据的变量清单的个数、数据类型、顺序必须与定义该游标的select_statement中列出的列清单相匹配 * 游标 利用游标取数 与游标相关的两个全局变量 @@FETCH_STATUS 保存着最后FETCH语句执行后的状态信息,其值和含义如下: 0 :表示成功完成FETCH 语句。 -1:表示FETCH语句执行有错误,或者当前游标位置已在结果集中的最后一行,结果集中不再有数据。 -2:提取的行不存在。 @@rowcount保存着自游标打开后的第一个FETCH语句,直到最近一次的FETCH语句为止,已从游标结果集中提取的行数。一旦结果集中所有行都被提取,那么@@rowcount的值就是该结果集的总行数。关闭游标时,该@@rowcount变量也被删除。 * 游标 【例5-36】使用student_cursor游标,将学生的学号和姓名打印出来 DECLARE @vsno char(9) ,@vsname varchar(20) OPEN student_cursor FETC
您可能关注的文档
- 数学建模简明教程(党林立)lf0912第1章.ppt
- 数学建模第四章0.ppt
- 数学建模综合评价类问题.ppt
- 数学建模自动控制时域分析.ppt
- 数学建模第四章(微分方程)0.ppt
- 数学建模训练第一章建立数学模型.ppt
- 数学建模算法介绍0.ppt
- 数学建模自动控制自动控制系统的数学模型.ppt
- 数学建模讲座.ppt
- 数学建模讲稿1(插值拟合方程求根).ppt
- 2020年1月浙江省新高考英语试题[含答案].doc
- 商贸零售行业2025年中期投资策略:产品驱动叠加调改创新,新质消费彰显增长韧性.pdf
- 国产抗体行业(一):从跟随到突破,PD-(L)1VEGF正当时.pdf
- 2025年中期食品饮料行业投资策略报告:政策与新趋势共振,把握结构性机会.pdf
- 煤炭开采:反内卷专题——煤炭抓手或在于开工率.pdf
- 游戏:版号发放持续新高,游戏市场稳步复苏最新完整版本.pdf
- 有色月跟踪:掘金亚欧大陆腹地,中亚金属矿产资源全景解析.pdf
- 钢铁行业深度报告:再论供给侧改革:制度优势实现供给约束破局通缩困局,掘金钢铁、有色行业投资机会.pdf
- 第3课时变阻器练习(课件)-浙教版八年级科学上册.pptx
- Unit3TobeagoodlearnerAssessmentFurtherstudy课件度译林版英语八年级上册.pptx
文档评论(0)