当存在查询可返回多行的任何可能时,程序必须以不同的方式执行该查询。分两个阶段处理多行查询。首先,程序启动查询。(不立即返回数据。)然后,程序一次请求一行数据。
使用称为
游标的特殊数据对象来执行这些操作。游标是表示查询的当前状态的数据结构。下表展示程序操作的一般的顺序:
- 程序声明游标及其相关联的 SELECT 语句,其只是分配持有该游标的存储。
- 程序打开游标,其启动相关联的 SELECT 语句的执行,并检测其中的任何错误。
- 程序将一行数据访存到主变量内,并处理它。
- 在访存最后一行之后,程序关闭游标。
- 当不再需要该游标时,程序释放游标来释放它使用的资源。
使用名为 DECLARE、OPEN、FETCH、CLOSE 和 FREE 的 SQL 语句执行这些操作。