点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我必须运行一个从0到一个数字的for循环(这是我在表上执行count(*)得到的)。
这是我的代码以及出现的错误:
错误:
无法执行'ALTER PROCEDURE HADMIN.PROC_PH_CSR_CURR_STOCK()语言SQLSCRIPT SQL安全调用者默认...'SAP DBTech JDBC:[1310]:不允许使用标量类型:V_CNT:第138列第1列(位于pos 4829)
代码:
v_cnt =从:t_rst;中选择count(*); 截断表HADMIN.PH_SUM_CSR_CURR_STOCK; 对于X IN 0 .. v_cnt DO 如果:X <= v_cnt然后 继续; ELSEIF:X> v_cnt然后 打破; 其他 计数:=计数+ 2500000; 万一; 结束于; 插入HADMIN.PH_SUM_CSR_CURR_STOCK 选择* FROM:t_rst LIMIT 2500000 OFFSET:count; 承诺; 结束;
声明
如您所写,它期望将表变量作为结果变量,而不是标量变量(如消息所示)。
您可以按照以下说明进行纠正:
如果使用的是HANA系统版本> = HANA 2.0 SPS0,则可以使用函数" record_count",并避免使用select来确定计数。 如下所示:
关于,
弗洛里安
你好弗洛里安
我纠正了语法,现在代码可以正常运行了,
一周热门 更多>