[理学]数据库设计相关课件之存储过程和游标7.ppt

[理学]数据库设计相关课件之存储过程和游标7.ppt

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

数据库原理与空间数据库 李伟涛 liweitao_801225@127.com 7.2 分行处理程序—游标 在数据库开发过程中,使用SELECT语句查询,得到一个结果集,对这个结果集中的不同数据行,可能要做不同的处理。 也就是要逐一处理每一个数据行。游标提供了一种比较好的解决方案。 7.2 分行处理程序—游标 例 在图书表中查询出与数据库相关的图书,并对其中的部分书的价格进行调整。 7.2.2 使用游标 操作步骤: 1. 声明游标(变量)。 2. 打开游标。 3. 从一个游标中提取信息。 4. 关闭(释放)游标。 1. 声明游标 语法格式: DECLARE 游标名 [SCROLL] CURSOR FOR SELECT语句 [FOR {READ ONLY | UPDATE [OF 列名 [,...n]]}] 1. 声明游标 例7-15 声明只读游标。 declare cur_c cursor for select 书名,作者,定价 from 图书 for read only 例7-16 声明更新游标。 declare cur_c cursor for select 书名,作者,定价 from 图书 for update 2. 声明游标变量 语法格式: DECLARE @变量名 CURSOR 建立游标变量与游标之间的关联。 方法1:先声明游标和游标变量,然后用SET语句将游标赋给游标变量。 例:DECLARE c1 CURSOR FOR SELECT * FROM s DECLARE @cur_var CURSOR SET @cur_var = c1 3. 打开游标 游标声明后,如果要从游标中读取数据,必须打开游标。 语法格式: OPEN [GLOBAL] 游标名|游标变量名 其中,GLOBAL表示要打开的是一个全局游标。 4. 读取游标中的数据 当游标被打开后,就可以从游标中逐行地读取数据。 语法格式: FETCH [[NEXT|PRIOR|FIRST|LAST|ABSOLUTE {n|@nvar} |RELATIVE {n|@nvar}] FROM ] {{[GLOBAL] 游标名}|@游标变量} [INTO @变量名[,...n]] 读取游标的数据(P207) Fatch [ next | prior | first | last ] [absolute n | relative n ] from 游标名 [ into 变量名 ] Next----返回当前行的下一行记录 Prior----返回紧邻当前行前面的结果行 Last----返回最后一行记录 Absolute n----返回第n行记录,当n为负值则从最后一行算起。 Relative ----游标当前位置起向后第n行,若n为负值则向前第n行。 游标的操作 Declare cur1 scroll cursor for Select * from 图书 Where 书名 like ‘%数据库%’ Open cur1 Fetch first from cur1 Fetch last from cur1 Fetch prior from cur1 Fetch absolute 2 from cur1 Fetch relative 2 from cur1 Close cur1 Deallocate cur1 (1) 使用CLOSE命令关闭游标 处理完游标中数据后,必须关闭游标来释放数据结果集和定位于数据记录上的锁。 语法格式: CLOSE [GLOBAL] 游标名|@游标变量 CLOSE 语句可以关闭游标,但不释放游标的数据结构。如果要再次使用游标,可用OPEN命令重新打开。 6. 释放游标 用CLOSE命令关闭游标并没有释放游标占用的数据结构。使用DEALLOCATE命令将释放游标占用的数据结构,游标使用的任何资源也随之释放。 语法格式: DEALLOCATE [GLOBAL] 游标名|@游标变量 游标的关闭指

文档评论(0)

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

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

1亿VIP精品文档

相关文档