- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章使用游标查询结果集
10.2.4 通过游标修改数据 通过游标可以实现更及时和更精确的定位更新。在某些时候,当使用cursor读取某条数据后,可能需要修改或删除该数据,如果此时另外执行UPDATE或DELETE命令,需要在WHERE子句中重新给 出行筛选条件,才能修改到该条数据。如果有多个行满足 UPDATE语句或DELETE语句中 WHERE子句的条件,那么将导致无意识的更新和删除。 为了避免这样的麻烦,可以在 cursor声明中加上FOR UPDATE 子句,这样就可以在UPDATE 或 DELETE命令中使用WHERE CURRENT OF 子句,直接修改或删除当前cursor所指的行数据,而不必重新给定选取条件。当cursor声明中有INSENSITIVE选项或STATIC选项,cursor内的数 据无法被修改,有时即使没有使用 INSENSITIVE选项,但在某些状况下,INSENSITIVE特性仍然会被启动,在这种情况下,该cursor内的数据仍无法被修改。 【例10.6】定义游标,然后打开游标,修改游标内数据。 DECLARE jsy_cur4 CURSOR GLOBAL SCROLL SCROLL_LOCKS FOR SELECT 驾照号, 姓名, 积分 FROM jsy FOR UPDATE OF 积分 OPEN jsy_cur4 FETCH LAST FROM jsy_cur4 UPDATE jsy SET 积分=21 WHERE CURRENT OF jsy_cur4 执行结果如图10.8。 游标内最后一个记录‘林水强’ 的积分为20.0,UPDATE语句将其修改为21。在查询窗口中输入下面语句查询基本表jsy所有数据: SELECT * FROM jsy 执行结果如图10.9。 可看到通过游标的修改影响到 基本表。若输入下面语句: FETCH FIRST FROM jsy_cur4 DELETE FROM jsy WHERE CURRENT OF jsy_cur4 SELECT * FROM jsy 执行结果如图10.10。 图10.10 查询删除数据后的基本表例10.6结果 10.2.5 关闭游标 用CLOSE语句关闭游标,格式为: CLOSE {{[GLOBAL]cursor_name} | @cursor_variable_name} 其参数含义与OPEN语句相同。 如关闭游标jsy_cur4的语句为: CLOSE jsy_cur4 被关闭的游标jsy_cur4其定义仍旧保存在系统内,系统只是释放了该游标内的结果集,可以重新执行OPEN语句打开游标,填充结果集。 当执行COMMIT TRANSACTION 语句或ROLLBACK TRANSACTION 语句结束事务处理时,目前所有已打开 的游标会被关闭。 10.2.6 删除游标 删除游标即删除游标定义,释放 所占用的系统资源,并且无法再重新 打开它,除非重新创建。删除游标使 用DEALLOCATE语句,其语法格式 为:DEALLOCATE {{[GLOBAL]cursor_name} | @cursor_variable_name} 其参数含义与OPEN语句相同。 如删除游标jsy_cur4语句为: DEALLOCATE jsy_cur4 本 章 小 结 游标是SQL Server 2008扩展数据查询功能的工具,使用游标可以对SELECT语句结果集进行再处理。本章介绍数据子集的概念和游标的类型,讲解了SQL Server 2008的四种游标即静态游标、动态游标、 只进游标和键集驱动游标的特点以及游标的一些属性,如只读属、性、滚动属性和可修改属性等。使用游标需要按流程操作,即先声明游标,然后打开游标、读取游标、关闭游标和删除游标, 本章讲解了各种游标操作语句,并通过实例讲解了如何创建各种类型的游标,如何读取游标所标识的结果集的任意行,以及如何通过游标来修改基本表数据方法。 FROM jsy WHERE 所学专业=汽车指挥 【例10.3】声明一快速只进游标,从jsy表中选取xc1表中驾驶车牌号为‘AX1320’的所有驾驶员的驾照号、姓名和积分。 DECLARE jsy_cur3 CURSOR FAST_FORWARD FOR SELECT a.驾照号, a.姓名, a.积分 FROM jsy a, xc1 WHERE a.驾照号=xc1.主驾 AND xc1.车牌号=AX1320‘ 10.2.2 打开游标 游标声明定义了游标的属性,游标使用前还需要打开游标,用游标声明中的SELECT语句的结果集填充游标,以便用户能够读
您可能关注的文档
最近下载
- 2024年公开选拔领导干部面试题及参考答案全解.doc
- 【9化第一次月考】合肥市第四十五中学2024-2025学年九年级上学期第一次月考化学试题.docx VIP
- 第四章 神奇的透镜单元复习(教学设计)八年级物理上册(沪科版2024).docx VIP
- 2024年中考语文二轮复习:名家散文阅读(毕淑敏)练习题汇编(含答案解析).docx VIP
- 【9化第一次月考】芜湖市鸠江区2024-2025学年九年级上学期第一次月考化学试题.docx VIP
- 《诡案组》(1-14卷文字全本)作者:求无欲.txt VIP
- 数字出版概论课件陈丹第一章数字出版及其发展历程;第二章数字出版研究及其学科体系.pptx VIP
- 2023-2024学年初三化学上学期第一次月考.docx VIP
- 2024年中考语文二轮复习:名家散文阅读(汪曾祺)练习题汇编(含答案解析).docx VIP
- 2025凉山州继续教育公需科目满分答案-《网络数据安全管理条列》解读.docx VIP
文档评论(0)