【发布时间】:2021-03-11 15:35:20
【问题描述】:
DECLARE VI_CNT INTEGER DEFAULT 0;
DECLARE VI_IDX INTEGER;
DECLARE VI_LIMIT INTEGER;
DECLARE VS_OUTPUTSTRG1 NVARCHAR(500);
DECLARE VS_OUTPUTSTRG2 NVARCHAR(500);
/* ANAGRAFICA TABELLE FLUSSI */
ANAGRAFICA = SELECT *
FROM (SELECT DISTINCT
ZCSOURSYS,
ZTABLE,
ROW_NUMBER() OVER (ORDER BY ZCSOURSYS) AS ROW_NB
FROM ZDAFNE_INFO);
/************ FOR ***********/
SELECT COUNT (ZTABLE) INTO VI_LIMIT FROM :ANAGRAFICA;
FOR VI_IDX IN 1..:VI_LIMIT DO
VI_CNT = :VI_IDX;
SELECT ZTABLE INTO VS_OUTPUTSTRG1 FROM :ANAGRAFICA WHERE ROW_NB = VI_IDX;
END FOR;
VS_OUTPUTSTRG2 := 'INSERT INTO "TEAMBW"."IFRS17.INTEGRATION.DATA_QUALITY::ZTB_DQ_DAFNE_TEST" SELECT COUNT(*) FROM '||:VS_OUTPUTSTRG1||'';
EXECUTE IMMEDIATE (:VS_OUTPUTSTRG2);
大家好!提前致谢! 对此有任何帮助吗?输出没有插入任何东西......也许我做错了什么?
【问题讨论】:
-
这个问题与什么 DBMS 相关?代码看起来像是用于 SAP HANA,但问题也有 mysql 和 postgresql 的标签。
-
您的插入在它之后没有提交,但是您走错了路。 Lars 给了你一个关于如何在 HANA 中获取 count 的答案(这是一个特定的,count 是持久化在元数据中的)。
标签: mysql sql postgresql hana sql-scripts