在用户定义 Table 类型的 HANA 中的 OUT 参数中插入多行

Insert Mulitple rows in a OUT parameter in a User-defined Table type HANA

我卡在一个地方了。

有一个过程可以检查某些内容并在成功确定该条件后插入 table 类型。

但我只能在 table 类型中插入一次。有没有办法一次又一次地插入table类型。

    PROCEDURE "hello"."helloWorld.db::sampleException" (OUT TRACE_RECORD "hello"."LogTrace" )
    LANGUAGE SQLSCRIPT AS
BEGIN

DECLARE i int;

select count(*) into i from "hello"."REGION";
IF :i > 1 then 
TRACE_RECORD = SELECT '1' AS "LogID", '1' AS "TraceID" FROM DUMMY;
 end if;
IF :i > 2 then 
TRACE_RECORD = SELECT '2' AS "LogID", '2' AS "TraceID" FROM DUMMY;
end if;

END;

我在执行程序时得到的只是最后一条记录“2,2”。

如何同时插入记录 1,1 和 2,2。

注意:我不想使用临时 Tables.

对此有任何帮助..

谢谢!

稍微编辑一下问题:

-我必须使用Table TYPE(直到没有比它更好的最佳方式)

-我要在table类型中插入20-30多条记录。

你必须把这个写成程序吗? table-valued 函数似乎更合适:

CREATE FUNCTION f_tables4 (in_id INTEGER)
RETURNS TABLE (
    "LogID" VARCHAR(400),
    "TraceID" VARCHAR(400)
)
LANGUAGE SQLSCRIPT
AS
BEGIN
    RETURN 
    SELECT t."LogID", t."TraceID"
    FROM (
        SELECT 1 AS i, '1' AS "LogID", '1' AS "TraceID" FROM DUMMY
        UNION ALL
        SELECT 2 AS i, '2' AS "LogID", '2' AS "TraceID" FROM DUMMY
    ) t
    JOIN (SELECT count(*) AS cnt FROM "hello"."REGION") c
    ON c.cnt > t.i
END