此语句用于对游标中的每一行重复执行一次语句列表。
[ statement-label : ]
FOR for-loop-name AS cursor-name
CURSOR FOR statement
[ FOR UPDATE | FOR READ ONLY ]
DO statement-list
END FOR [ statement-label ]
FOR 语句是控制语句,它允许对游标中的每一行执行一次 SQL 语句列表。FOR 语句等效于这样一个复合语句:游标有一个 DECLARE,游标结果集中的每一列有一个变量 DECLARE,后面跟一个循环,它将游标中的一行读入局部变量,并对游标中的每一行执行一次 statement-list。
有效的游标类型包括动态滚动(缺省)、滚动、非滚动、区分大小写以及不区分大小写。
每个局部变量的名称和数据类型都是从游标中使用的 statement 派生的。在 SELECT 语句中,数据类型是选择列表中表达式的数据类型。名称是选择列表项的别名(如果存在这样的别名),否则名称是列的名称。任何不是简单列引用的选择列表项都必须有别名。在 CALL 语句中,名称和数据类型从过程定义的 RESULT 子句中获得。
LEAVE 语句可用来指示接下去执行 END FOR 之后第一条语句。如果指定结尾 statement-label,它必须与起始 statement-label 匹配。
无。
无。
SQL/92 持久存储模块特性。
SQL/99 持久存储模块特性。
Sybase 不受 Adaptive Server Enterprise 支持。
下面的代码段阐释了 FOR 循环的用法。
FOR names AS curs CURSOR FOR SELECT emp_lname FROM employee DO CALL search_for_name( emp_lname ); END FOR;
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。