我需要设计一个存储过程,用于在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)但是我得到的结果是空的。
我是不是漏掉了什么?
谢谢
发布于 2016-06-24 17:27:02
你宣称
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;https://stackoverflow.com/questions/34956267
复制相似问题