当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库技术(87)

MSSQL
优化SQL Server索引的小技巧
SQL Server的空值处理策略
Windows上的MySQL UDF开发
MS SQLSERVER中如何快速获取表的记录总数
MS SQLSERVER 中如何得到表的创建语句
使用索引调节向导调整应用程序的性能
使用查询分析器调整SQL服务器脚本
SQL Server到Oracle连接服务器的实现
数据库查询结果的动态排序(6)
数据库查询结果的动态排序(7)
保持Oracle数据库优良性能的若干诀窍
数据库管理员制胜之宝
在Linux下访问MS SQL Server数据库
关于如何在查询结果中添加自动编号
如何提取除最新十条记录之外的所有记录?
一个有关DISTINCT的问题解答
关于MSSQL Server中DATETIME类型数据的处理
TOP N 和SET ROWCOUNT N 哪个更快?
金额阿拉伯数字转换为中文的存储过程
谈谈数据从sql server数据库导入mysql数据库的体验

MSSQL 中的 SQL Server数据库技术(87)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 67 ::
收藏到网摘: n/a

 在前面几节,我们详细介绍了如何声明游标,从游标中读取数据以及关闭、释放游标的方法。下面我们将给出几个应用实例使读者对游标有更为全面的了解。

13.7.1 游标变量的应用
    我们已经提到游标是从MS SQL SERVER 7 版本才开始使用的新的变量类型,游标常被应用在存储过程、触发器中。那么游标是如何被作为变量而应用呢?看一下系统过程sp_cursor_list 的SQL 语句文本,会大有收获。


    在该存储过程中,@cursor_return 为一游标变量,并将其结果集返回给其调用者,该结果集保存有当前所有游标的各属性值。
提示:在存储过程中,如果被定义为游标类型的变量使用OUTPUT选项,则必须使用VARYING保留字,即为@variable CURSOR VARYING OUTPUT形式。
    例13-9: 如果准备在客户机程序中对从数据库服务器检索出的数据进行处理,那么可以创建一个包含游标的存储过程。
    首先删除同名存储过程jobs_cursor

    接着创建存储过程jobs_cursor




13.7.2 嵌套游标
    为了灵活地处理结果集,可以在存储过程中使用多层游标。
    例13-10: 本例创建了包含二层游标的存储过程。第一层游标存放authors 表中符合过程参数的数据记录,每次从第一层游标中读取一条authors 数据,然后遍历第二层游标,将有关该authors 的信息读取出来。如果准备生成一个嵌套报表,这种方法很有效。