您现在的位置:中国下载站学院中心数 据 库MySQL教程Mysql基础教程 → 文章列表

MS SQL入门基础:声明游标

作者:佚名  来源:不详  发布时间:2007-4-14 12:28:18   

减小字体 增大字体

 
 
  每一个游标必须有四个组成部分这四个关键部分必须符合下面的顺序;

  1.DECLARE 游标

  2.OPEN 游标

  3.从一个游标中FETCH 信息

  4.CLOSE 或DEALLOCATE 游标

  通常我们使用DECLARE 来声明一个游标声明一个游标主要包括以下主要内容: 游标名字 数据来源(表和列) 选取条件 属性(仅读或可修改)

  其语法格式如下:

  DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSOR

  FOR select_statement

  [FOR {READ ONLY | UPDATE [OF column_name [,...n]]}]

  其中: cursor_name

  指游标的名字。 INSENSITIVE

  表明MS SQL SERVER 会将游标定义所选取出来的数据记录存放在一临时表内(建立在tempdb 数据库下)。对该游标的读取操作皆由临时表来应答。因此,对基本表的修改并不影响游标提取的数据,即游标不会随着基本表内容的改变而改变,同时也无法通过

  游标来更新基本表。如果不使用该保留字,那么对基本表的更新、删除都会反映到游标中。

  另外应该指出,当遇到以下情况发生时,游标将自动设定INSENSITIVE 选项。

  在SELECT 语句中使用DISTINCT、 GROUP BY、 HAVING UNION 语句;

  使用OUTER JOIN;

  所选取的任意表没有索引;

  将实数值当作选取的列。 SCROLL

  表明所有的提取操作(如FIRST、 LAST、 PRIOR、 NEXT、 RELATIVE、 ABSOLUTE)都可用。如果不使用该保留字,那么只能进行NEXT 提取操作。由此可见,SCROLL 极大地增加了提取数据的灵活性,可以随意读取结果集中的任一行数据记录,而不必关闭再

  重开游标。 select_statement

  是定义结果集的SELECT 语句。应该注意的是,在游标中不能使用COMPUTE、COMPU- TE BY、 FOR BROWSE、 INTO 语句。 READ ONLY

  表明不允许游标内的数据被更新尽管在缺省状态下游标是允许更新的。而且在UPDATE或DELETE 语句的WHERE CURRENT OF 子句中,不允许对该游标进行引用。 UPDATE [OF column_name[,…n]]

  定义在游标中可被修改的列,如果不指出要更新的列,那么所有的列都将被更新。当游标被成功创建后,游标名成为该游标的惟一标识,如果在以后的存储过程、触发器或Transact_SQL 脚本中使用游标,必须指定该游标的名字。

转贴于:中国QQ站

  • 上一篇文章:MS SQL入门基础:打开游标
  • 下一篇文章:MS SQL入门基础:游标、游标的优点和种类
  • 阅读统计:[]
  • 中国QQ站】【设为主页】【收藏本页】【打印本文】【回到顶部】【关闭此页

    相关文章
    文章评论(评论内容只代表网友观点,与本站立场无关!)

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 0分

    内 容:

             (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码


    设为首页 - 关于我们 - 广告服务 - 网站地图 - 加入收藏 - 网站声明 - 网站帮助 - 友情链接