我需要设计一个存储过程,用于在 win7 上的 Aginity Workbench 4.3 的 Netteza 数据库上运行一些功能。
CREATE OR REPLACE PROCEDURE my_pro(int)
RETURNS integer EXECUTE AS CALLER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE t int;
BEGIN
t := 0 ;
WHILE t <= 1 loop
EXECUTE IMMEDIATE 'select 1';
t := t + 1;
END LOOP;
END;
END_proc;
exec my_pro(0)
但结果为空。
我在这里错过了什么吗?
谢谢
最佳答案
你声明
CREATE OR REPLACE PROCEDURE my_pro(int)
RETURNS integer
但您没有“返回”任何整数值。您应该只添加一个带有整数值的“RETURN”语句。例如:
CREATE OR REPLACE PROCEDURE my_pro(int)
RETURNS integer EXECUTE AS CALLER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE t int;
BEGIN
t := 0 ;
WHILE t <= 1 loop
EXECUTE IMMEDIATE 'select 1';
t := t + 1;
END LOOP;
RETURN t;
END;
END_proc;
关于database - 设计一个存储过程,用于在 win7 上的 Aginity Workbench 4.3 中运行 Netezza 数据库中的某些功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34956267/