【问题标题】:Netezza - How to return multiple values from a stored procedure without REFTABLENetezza - 如何在没有 REFTABLE 的情况下从存储过程返回多个值
【发布时间】:2018-10-23 08:58:06
【问题描述】:

我尝试在不使用 Netezza 中的 reftable 的情况下从存储过程返回一些值。

CREATE OR REPLACE PROCEDURE TMP_GETTABLEINFO(CHAR(any), VARCHAR(any), VARCHAR(any)) returns char(1), varchar(30) EXECUTE AS OWNER LANGUAGE NZPLSQL AS begin_proc DECLARE a ALIAS FOR $1; b ALIAS FOR $2; BEGIN ... RETURN a, b; END;

有可能吗? 怎么样?

我的结果是:ERROR [HY000] ERROR: Must specify LANGUAGE

【问题讨论】:

    标签: stored-procedures netezza nzplsql


    【解决方案1】:

    我认为这是不可能的。我还没有看到返回多个值的情况。

    来自文档 (Netezza_stored_procedures_guide.pdf):通常,NZPLSQL 过程返回唯一的返回值,但它也可以返回指定表形式的结果集。

    创建返回结果集的存储过程:

    • 定义存储过程,返回值为RETURNS REFTABLE (<table-name>),表示它返回的结果集与指定的表相似。
    • 在过程主体内,使用变量REFTABLENAME 来引用结果表。

    【讨论】:

      猜你喜欢
      • 2010-10-20
      • 1970-01-01
      • 2016-12-25
      • 1970-01-01
      • 1970-01-01
      • 2012-01-15
      • 1970-01-01
      • 2011-08-31
      • 2015-10-06
      相关资源
      最近更新 更多