- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 游标及事务 第10章 游标及事务 1 游标 游标的概念 为了对数据表集合中的每一行实现有针对性的操作, 引入“游标”.游标提供了一种在服务器端按行处理表中数据的机制。 游标具有类似C语言指针一样的结构,通过游标的引导可以识别数据表内指定的行,从而可以有选择的按行操作. 即游标包括两部分:查询结果集--由selelct返回,游标位置--通过查询结果集指向表中某一行的指针。 利用游标可以表中数据进行针对性的修改或删除 游标主要用在存储过程、触发器和T-sql的脚本中 对游标的操作有: 声明游标, 打开游标, 关闭游标, 释放游标, 按游标取数, 按游标修改记录等 游标类型: 游标结果集存储在tempdb库中 静态游标:总是按照打开时的原样显示结果集,当有用户修改表数据时,就不能反应表中的现状,所以不能通过 游标修改数据,只能读数据。 动态游标:动态游标每次读取时反映表中最新的所有更改,即当滚动游标时,所有用户的更改均通过游标可见。 键集游标:将结果集所有行的键值都存储在tempdb库中,当移动游标时,通过键值读取数据行的全部数据列,因此,这种游标可以反映对基表的非键值字段的 全部更新。不能用于对键值的修改或插入,资源消耗介于动态与静态之间。该表必须有主键。 forward_only 只进。不支持滚动,仅支持next。只支持从头到尾的顺序提取数据,在行提取之后所作的更改对游标不可见。 Scroll 滚动 。支持:next、prior、first、last、absolute、relative 例:将学生表中学号,姓名,年龄提取出来,按年龄升序排列,并将查询结果添加到一个名为“TXS”的表中,同时为每条记录加入“1,2,3…”序号. USE CJGL GO CREATE TABLE TXS(序号 int, 学号 char(8), 姓名 char(8), 出生日期 DATETIME) GO DECLARE @I int DECLARE @XH char(8), @XM char(8), @出生日期 DATETIME DECLARE Mycursor SCROLL CURSOR FOR SELECT 学号,姓名,出生日期 FROM XS ORDER BY 出生日期 --定义游标 OPEN Mycursor --打开游标 FETCH FIRST FROM Mycursor INTO @XH, @XM, @出生日期 --从结果集中取出第一行,送给三个变量 SET @I=1 WHILE @@FETCH_STATUS=0 --判断是否到了学生表的尾部 BEGIN INSERT INTO TXS(序号,学号,姓名,出生日期 ) VALUES (@I,@XH,@XM,@出生日期 ) FETCH NEXT FROM Mycursor INTO @XH, @XM, @出生日期 SET @I=@I+1 END CLOSE Mycursor --关闭游标 DEALLOCATE Mycursor --释放游标 GO SELECT * FROM TXS DROP TXS GO 游标操作 1.声明游标SQL-92标准 Declare 游标名 [insensitive][scroll ] cursor For select 语句 [For [read only | update [of 列1[,…n] ] ] 没有使用SCROLL定义游标, 只能用NEXT取数 2.按游标取数 Fetch [next | prior | first | last | absolute{n | @nvar}| relative {n | @nvar} ] From] { { [ GLOBAL ] cursor_name } | @cursor_variable_name } [Into @局部变量1 [,…n] ] USE 教学管理 GO DECLARE @Myage int DECLARE Mycur1 CURSOR FOR SELECT 年龄 FROM 学生 FOR UPDATE OF 年龄 OPEN Mycur1 FETCH NEXT FROM Mycur1 INTO @Myage WHILE @@FETCH_STATUS=0 BEGIN IF @Myage20 DELETE FROM 学生 WHERE CURRENT OF Mycur1 1。声明游标两种格式 1.2 声明游标(1) 1.2 声明游标(2) 1.3 打开游标 1.4 数据处理(1) 提取数据 语法格式: fetch?[[next|prior|first|last | absolute n |relati
您可能关注的文档
- 百滋百特甜甜圈招商策划(零售学).ppt
- 百舸争流的思想(必修).ppt
- 百舸争流的思想复习.ppt
- 百年人寿公司简介.ppt
- 百部中外经典文学名著赏析[1].ppt
- 的学习理论基础.ppt
- 的滋味(初一作文).ppt
- 的自然及人文环境特征3联系我国的国土整治实际考查.ppt
- 的英语学习经验.ppt
- 盗版小美人鱼.ppt
- 7.《包身工》课件(共47张PPT) 2025-2026学年统编版高中语文选择性必修中册.pptx
- 陕西省西安市高新第一中学 2024-2025学年下学期七年级英语期末试题(含答案,无听力原文及音频).pdf
- 陕西省咸阳市2024-2025学年高二下学期期末质量检测英语试卷(含答案,无听力原文及音频).pdf
- 2024-2025学年山西省名校联考高二(下)期末数学试卷(含答案).pdf
- 10.2《 师说》 课件(共37张PPT)统编版高中语文必修上册.pptx
- 云南省丽江市丽江地区中学等学校2024-2025学年高一下学期期末考试语文试题(含答案).pdf
- 四川省广安中学2024-2025学年高二下学期6月第三次月考英语试卷(含答案,无听力原文及音频).pdf
- 四川省成都石室中学2024-2025学年高一下学期期末考试英语试题(含答案,无听力原文及音频).pdf
- 安徽省安庆市江淮协作区2024-2025学年高一下学期7月期末生物试卷(含答案).pdf
- 7.《鹿角和鹿腿》课件(共32张PPT).pptx
最近下载
- 长螺旋钻孔压灌混凝土旋喷扩孔桩施工方案.doc VIP
- 肺康复ppt优质课件.pptx VIP
- GB-50352-2019-民用建筑设计统一标准.pdf VIP
- 建设工程施工合同示范文本gf-2013-0201)协议书、通用条款、专用条款.docx VIP
- 高考语文阅读理解《鸭子》含答案.docx VIP
- 无菌检查用培养基灭菌后的保存有效期的验证方法.docx VIP
- 输变电工程标准工艺(变电工程电气分册)2022版.docx VIP
- 2025贵州省专业技术人员继续教育公需科目考试题库(2025公需课课程).docx VIP
- 抹灰砂浆规范.docx VIP
- 模具工劳动合同协议书.docx VIP
文档评论(0)