WEB开发网
开发学院数据库MSSQL Server SQL Server数据库技术(87) 阅读

SQL Server数据库技术(87)

 2007-11-11 08:21:38 来源:WEB开发网   
核心提示: 在前面几节,我们详细介绍了如何声明游标,SQL Server数据库技术(87),从游标中读取数据以及关闭、释放游标的方法,下面我们将给出几个应用实例使读者对游标有更为全面的了解,将有关该authors 的信息读取出来,如果准备生成一个嵌套报表,13.7.1 游标变量的应用我们已经提到游标是从MS sql server
 在前面几节,我们详细介绍了如何声明游标,从游标中读取数据以及关闭、释放游标的方法。下面我们将给出几个应用实例使读者对游标有更为全面的了解。

13.7.1 游标变量的应用
  我们已经提到游标是从MS sql server(WINDOWS平台上强大的数据库平台) 7 版本才开始使用的新的变量类型,游标常被应用在存储过程、触发器中。那么游标是如何被作为变量而应用呢?看一下系统过程sp_cursor_list 的SQL 语句文本,会大有收获。
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图一)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图二)" />
  在该存储过程中,@cursor_return 为一游标变量,并将其结果集返回给其调用者,该结果集保存有当前所有游标的各属性值。
提示:在存储过程中,如果被定义为游标类型的变量使用OUTPUT选项,则必须使用VARYING保留字,即为@variable CURSOR VARYING OUTPUT形式。
  例13-9: 如果准备在客户机程序中对从数据库服务器检索出的数据进行处理,那么可以创建一个包含游标的存储过程。
  首先删除同名存储过程jobs_cursor
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图三)" />
  接着创建存储过程jobs_cursor
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图四)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图五)" />

sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图六)" />
13.7.2 嵌套游标
  为了灵活地处理结果集,可以在存储过程中使用多层游标。
  例13-10: 本例创建了包含二层游标的存储过程。第一层游标存放authors 表中符合过程参数的数据记录,每次从第一层游标中读取一条authors 数据,然后遍历第二层游标,将有关该authors 的信息读取出来。如果准备生成一个嵌套报表,这种方法很有效。
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图七)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图八)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图九)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图十)" />
sql server<font class=reblank  style=(WINDOWS平台上强大的数据库平台)数据库技术(87)(图十)" />
 
 

1 2 3 4 5 6  下一页

Tags:SQL Server 数据库

编辑录入:coldstar [复制链接] [打 印]
赞助商链接