1.使用游标
SQL检索操作返回一组称为结果集的行,这组返回的行都是与SQL语句相匹配的行。
简单地使用SELECT语句,没有办法得到第一行、下一行或前10行。
PowerShell
结果集(result set)
SQL查询所检索出的结果。
有时,需要在检索出来的行中前进或后退一行或多行,这就是游标的用途所在。
游标(cursor)是一个存储在DBMS服务器上的数据库查询,它不是一条SELECT语句,而是被该语句检索出来的结果集。在存储了游标之后,应用程序可以根据需要滚动或浏览其中的数据。
PowerShell
说明SQLite支持
SQLite 支持的游标称为步骤(step)
不同的DBMS支持不同的游标选项和特性。
常见的一些选项和特性如下。
- 能够标记游标为只读,使数据能读取,但不能更新和删除。
- 能控制可以执行的定向操作(向前、向后、第一、最后、绝对位置和相对位置等)。
- 能标记某些列为可编辑的,某些列为不可编辑的。
- 规定范围,使游标对创建它的特定请求或对所有请求可访问。
- 指示DBMS对检索出的数据进行复制,使数据在游标打开和访问期间不变化。
游标主要用于交互式应用,其中用户需要滚动屏幕上的数据,并对数据进行浏览或做出更改。
2.使用游标
使用游标涉及几个明确的步骤。
在使用游标前,必须声明它。这个过程实际上没有检索数据,它只是定义要使用的SELECT语句和游标选项。
一旦声明,就必须打开游标以供使用。这个过程用前面定义的SELECT语句把数据实际检索出来。
对于填有数据的游标,根据需要取出(检索)各行。
在结束游标使用时,必须关闭游标,可能的话,释放游标
声明游标后,可根据需要频繁地打开和关闭游标。
在游标打开时,可根据需要频繁地执行取操作。
2.1创建游标
使用DECLARE语句创建游标,这条语句在不同的DBMS中有所不同。
SQL
--MySQL、SQL Server
DECLARE CustCursor CURSOR
FOR
SELECT * FROM Customers
WHERE cust_email IS NULL;
2.2使用游标
使用 OPEN CURSOR语句打开游标。
SQL
OPEN CURSOR CustCursor
2.3关闭游标
SQL
CLOSE custCursor