【发布时间】:2021-08-11 10:10:09
【问题描述】:
我有一个包含三列(table_name、column_name、data_type)的表,我试图将这三列的值作为参数传递给循环中的存储过程。
现在,我开发了一个非常基本的代码来检查循环是否正常。
DECLARE
cursor c1 is
select table_name, column_name, data_type from table_list;
BEGIN
FOR i IN c1 LOOP
DBMS_OUTPUT.PUT_LINE(i.table_name||' ' ||i.column_name ||''||i.data_type);
END LOOP;
END;
关于问题的更新:循环工作正常,但是当我调用如下代码所示的过程时,它给了我一个错误
DECLARE
cursor c1 is select table_name, column_name,data_type from table_list;
BEGIN
FOR i IN c1 LOOP
DBMS_OUTPUT.PUT_LINE(i.table_name||' ' ||i.column_name ||' '||i.data_type);
UPD_PII_DATA(i.table_name,i.column_name,i.data_type);
DBMS_OUTPUT.PUT_LINE(i.table_name|| ' '|| ' and column '|| i.column_name|| ' completed test');
END LOOP;
END;
第 1 行出错 ORA-00942: 表或视图不存在 ORA-06512: 在“MP_ODI.UPD_PII_DATA”,第 13 行 ORA-06512: 在第 9 行 ORA-06512: 在第 9 行
请帮我解决这个错误
【问题讨论】:
标签: oracle for-loop stored-procedures plsql cursor