EXECUTE PROCEDURE 语句

使用 EXECUTE PROCEDURE 语句来调用用户定义的过程或内建例程。该语句是对 SQL 的 ANSI/ISO 标准的扩展。

语法

元素 描述 限制 语法
function 要执行的 SPL 例程 必须存在 数据库对象名
output_var 从 UDR 接收返回值的主变量或程序变量 在 CREATE TRIGGER 语句的上下文中,必须包含触发器表中或另一表中的列名称 特定于语言
procedure 要执行的用户定义过程 必须存在 数据库对象名
SPL_var 包含要执行的 SPL 例程名称的变量 必须是字符数据类型,包含 SPL 例程的非 NULL 名称。 标识符

用法

EXECUTE PROCEDURE 语句调用用户定义过程并指定其参数。

为了与早期的 GBase 8s 版本相兼容,您可使用 EXECUTE PROCEDURE 语句来执行 CREATE PROCEDURE 语句定义的 SPL 函数。

如果 EXECUTE PROCEDURE 语句返回多行,则必须在 SPL 例程的 FOREACH 循环内处理该结果集,或者通过 ESQL/C 例程的游标另行访问。

在支持隐式事务的符合 ANSI/ISO 数据库中,在缺省情况下,EXECUTE PROCEDURE 不开启新的事务。然而,在被调用过程内的 SQL 语句可开启新的事务。

1 仅限于存储过程语言
2 仅限于触发器例程
3 请参阅 参数