【正确答案】由SELECT语句返回的完整行集(包括满足WHERE子句中条件的所有行)称为结果集。关系型数据库中的操作会对整个结果集起作用。应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理,这些应用程序需要一种机制以便每次处理一行或一部分行。游标就是提供这种机制的,是对结果集的一种扩展。
具体而言,游标的特点如下:
1)允许定位在结果集的特定行。
2)从结果集的当前位置检索一行或一部分行。
3)支持对结果集中当前位置的行进行数据修改。
4)为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。
5)提供脚本、存储过程和触发器中用于访问结果集中的数据的SQL语句。
6)使用游标可以执行多个不相关的操作。
7)使用游标可以提供脚本的可读性。
8)使用游标可以建立命令字符串,可以传送表名,或者把变量传送到参数中,以便建立可以执行的命令字符串。
在SQL Server中,在从游标中提取信息后,可以通过判断@@FETCH_STATUS的值来判断是否执行到了最后。当@@FETCH_STATUS为0的时候,说明提取是成功的,否则,就可以认为到了最后。在Oracle中,在打开游标之前先确定数据的行数,然后在游标里面计数,判断计数器是否和之前的行数相等,若相等则说明游标到了当前结果集的最后一行。
【答案解析】