点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我对临时表洞察SA...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我对临时表洞察SA...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我对临时表洞察SAP HANA程序有疑问。 如果我以以下方式使用本地SQL编辑器,那么它将起作用:
创建本地临时表#test_table(mandt VARCHAR(3),type_id VARCHAR(4));
插入#test_table值('001','Dum');
插入# test_table值('002','Dum2');
SELECT
mandt,
type_id
从#test_table
mandt ='001';
但是现在我想对具有编辑权限的过程使用相同的见解。 所以我写下了以下内容:
创建过程" _SYS_BIC"。" d052319/DEMO_PROC"(在MANDT VARCHAR(3)中,
在OUTPUT_TABLE" _SYS_BIC"中。" d052319/DEMO_PROC/tabletype/OUTPUT_TABLE")
语言SQLSCRIPT sql安全定义程序为
/*********开始过程脚本************/
开始
创建本地临时表#test_table(mandt VARCHAR(3),type_id VARCHAR(4));
插入#test_table值(mandt,'Dum1');
插入#test_table值 ('002','Dum2');
output_table =
SELECT
mandt,
type_id
从#test_table
哪里mandt = mandt;
END
;
但是通过执行,我得到了表#test_table不存在的错误。 如果您在过程中创建表并尝试直接访问它们,也会发生同样的事情。 但是有没有可能说在前面的行中使用创建的表?
如果需要更多详细信息,则错误消息为:
无法执行'创建过程" _SYS_BIC"。" d052319/DEMO_PROC"(在MANDT VARCHAR(3)中,在OUTPUT_TABLE中......
SAP DBTech JDBC:[259](在353):无效的表名:在模式D052319中找不到表/视图#TEST_TABLE:第9行第15列(在pos 353)
致以最诚挚的问候,并感谢所有对您有帮助的人,
马丁
嗨,马丁,
正如我先前的回复中所建议的那样,您不能使用全局临时表来满足您的要求吗?
请记住,只有全局临时表的元数据会保留。 当您离开HANA会话时,实际数据内容将被删除/截断。
一个例子是:
创建全局临时表" SYSTEM"。" test_table"(命令VARCHAR(3) ,type_id VARCHAR(4));
创建过程" SYSTEM"。" DEMO_PROC"(在MANDT VARCHAR(3)中,
在OUTPUT_TABLE" SYSTEM"中。" OUTPUT_TABLE")
语言SQLSCRIPT sql安全定义程序为
/*********开始过程脚本************/
< p> BEGIN截断表" SYSTEM"。" test_table";
插入" SYSTEM"。" test_table"值(:mandt,'Dum1');
插入" SYSTEM"。" test_table"值('002','Dum2');
output_table =
SELECT
mandt,
type_id
来自" SYSTEM"。" test_table"
其中mandt =:mandt;
END;
谢谢
Anooj
一周热门 更多>