下载此文档

第10章游标和触发器.ppt


文档分类:办公文档 | 页数:约60页 举报非法文档有奖
1/60
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/60 下载此文档
文档列表 文档介绍
**,但这些数据是作为一个结果集得到的,用户可以把这个结果集保存到一个文件里,或生成一个新表以便于以后使用。这种查询是非常重要的。但这种查询形式有一个很大的缺点,它不能对结果集中每一行的数据进行处理。使用游标可以实现对查询结果集中的数据逐行处理。(Cursor)是一种处理数据的方法,为了查看或者处理结果集中的数据,游标提供了在结果集中向前或者向后浏览数据的能力。可以把游标看成一种指针,它既可以指向当前位置,也可以指向结果集中的任意位置,它允许用户对指定位置的数据进行处理,可以把结果集中的数据放在数组、应用程序中或其它地方。Transact-SQL游标遵循ANSI-92标准。*,正是这些优点使得游标在实际编程应用中具有重要作用。允许程序对由查询语句SELECT返回的行集合中的每一行数据执行相同或不同的操作,而不是对整个行集合执行同一个操作提供对基于游标位置的表中的行进行删除和更新的能力游标实际上作为面向集合的数据库管理系统(RDBMS)和面向行的程序设计之间的桥梁,使这两种处理方式通过游标沟通起来本章首页*-1所示。具体地说,有如下几个步骤:①创建游标。使用T-SQL语句生成一个结果集,并且定义游标的特征,如游标中的记录是否可以修改。②打开游标。③从游标的结果集中读取数据。从游标中检索一行或多行数据称为取数据。④对游标中的数据逐行操作。⑤关闭和释放游标。*。声明游标的语法如下:DECLAREcursor_name[SCROLL]CURSORFORselect_statement[FOR{READONLY|UPDATE[OFcolumn_name_list]}]其中:cursor_name:是游标的名字,为一个合法的SQLServer标识符,游标的名字必须遵循SQLServer命名规范。SCROLL:表示取游标时可以使用关键字NEXT、PRIOR、FIRST、LAST、ABSOLUTE、RELATIVE。每个关键字的含义将在介绍FETCH子句时讲解。select_statement:是定义游标结果集的标准SELECT语句,它可以是一个完整语法和语义的Transact-SQL的SELECT语句。*但是这个SELECT语句必须有FROM子句,PUTEBY、FORBROWSE和INTO。FORREADONLY:指出该游标结果集只能读,不能修改。FORUPDATE:指出该游标结果集可以被修改。OFcolumn_name_list:列出可以被修改的列的名单。应该注意:①游标有且只有两种方式:FORREADONLY或FORUPDATE。②当游标方式指定为FORREADONLY时,游标涉及的表不能被修改。③当游标方式指定为FORUPDATE时,可以删除或更新游标涉及的表中的行。通常,这也是缺省方式,即不指定游标方式时为FORUPDATE方式。④声明游标的DECLARECURSOR语句必须是在该游标的任何OPEN语句之前。*,打开游标使用OPEN语句。打开游标的语法如下:OPENcursor_name其中:•cursor_name是一个已声明的尚未打开的游标名。注意:①当游标打开成功时,游标位置指向结果集的第一行之前。②只能打开已经声明但尚未打开的游标。*,游标位置位于结果集的第一行前,此时可以从结果集中提取(FETCH)行。SQLServer将沿着游标结果集一行或多行向下移动游标位置,不断提取结果集中的数据,并修改和保存游标当前的位置,直到结果集中的行全部被提取。从打开的游标中提取行的语法如下:FETCH[[NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE]FROM]cursor_name[INTOfetch_target_list]其中:cursor_name:为一已声明并已打开的游标名字。NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE:游标移动方向,缺省情况下是NEXT,即向下移动。NEXT:取下一行数据。PRIOR:取前一行数据。FIRST:取第一行数据。*LAST:取最后一行数据。ABSOLUTE:按绝对位置取数据。RELATIVE:按相对位置取数据

第10章游标和触发器 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数60
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sanshenglu2
  • 文件大小649 KB
  • 时间2020-10-29