数据库中的书签——游标

来源:未知 责任编辑:责任编辑 发表时间:2014-03-23 22:32 点击:
数据库中的书签——游标
 
游标的引入
       为解决在多条结果集的情况下,要逐一读取每一条记录所带来的麻烦。游标为我们提供了一种较好的解决方案。  www.2cto.com  
游标的组成
       每一个游标必须有四个组成部分。且必须符合下面的顺序。
1,             declare游标(用来声明游标)
2,             open游标
3,             从一个游标中fetch信息
4,             Close或deallocate游标
游标的声明
       声明游标主要包含以下内容:游标名字,数据来源表和列,选取条件,属性仅读或可修改
       其语法格式如下:
       Declare 游标名称 cursor
       [local|glocal]                 指定游标的作用域是局部的还是全局的
       [forward_only|scroll]    选择forward_only则游标只能从第一行滚动到最后一行。Scroll表明所有的提取操作都可用,如果不使用该保留字则只能进行next操作。
       [read_only]                  表明不允许游标内的数据被更新
       For 选择语句               是定义结果集的select语句,应该注意的是在游标中不能使用compute等语句。
       [for[update[of 字段名称1,字段名称2…]]]   定义在游标中可被修改的列
打开游标
       游标声明以后,如果要从游标中读取数据,必须打开游标,使用open命令,语法格式如下:
Open 游标名称  www.2cto.com  
读取游标中的数据——fetch
       Fetch
       [[next|prior|first|last|absolute{n|@nvar}|relative{n|@nvar}]from]cursor_name
       [into  @variable_name1,@variable_name2…]
 
       Next:返回结果集中当前行的下一行,并增加当前行数为返回行行数,如果fetchnext是第一次读取游标中数据则返回结果集中的是第一行而不是第二行
       Prior:返回结果集中当前行的前一行并减少当前行数为返回行行数。如果fetchprior是第一次读取游标中数据则无数据记录返回并把游标位置设为第一行。
 
       First:返回游标中第一行
       Last:返回游标中的最后一行
       Absolute{n|@nvar}:如果n或者@nvar为正数,则表示从游标中返回的数据行数。如果n货@nvar为负数,则返回游标内从最后一行数据算起的第n或@nvar行数据。
若n或@nvar超过游标的数据子集范畴,则@@fetch_stars返回-1。在该情况下,如果n或@nvar为负数,则执行fetchnext命令会得到第一行数据,如果为正值,执行fetch prior命令则会得到最后一行数据。n或@nvar可以是一固定值,也可以是一smallint,tinyint或int类型的变量。
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Request.ServerVariables 参数大全
  • 执行全文索引时出现权限不足的解决方法
  • 导入excel文件处理流程节点的解决方案
  • 查看sql修改痕迹(SQL Change Tracking on Table)
  • App数据层设计及云存储使用指南
  • PostgreSQL启动过程中的那些事三:加载GUC参数
  • MongoDB安装为Windows服务方法与注意事项
  • Percolator与分布式事务思考(二)
  • 写给MongoDB开发者的50条建议Tip1
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1