哪些錯誤與下面的嵌套循環,它拋出以下錯誤:PL/SQL嵌套循環錯誤
ORA-00936:缺少表達
SET SERVEROUT ON;
SET FEED OFF;
DECLARE
schema_name varchar2(100);
table_name varchar2(100);
BEGIN
FOR outer_rec IN (select * from scott.table_list) LOOP
FOR inner_rec IN (select a.* from all_tab_columns a where a.column_name =outer_rec.table_name(+) and a.owner='SCOTT' order by a.table_name) LOOP
dbms_output.put_line (q'[||]' ||inner_rec.column_name || q'[||'|@@@@|']');
END LOOP;
END LOOP;
END;
/
reomve(+)in a.column_name = outer_rec.table_name(+) –
但是爲什麼? 我想要all_tab_columns中的所有列。 反正,刪除(+)不會給出任何輸出。 – contravaluebets
這個(+)很重要,它允許在外連接的情況下outer_rec.table_name不匹配 – Elfentech