Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Can't run "execute immediate" in PL/SQL
Hello
I wrote a small PL/SQL procedure that should switch all referential
constraints enabled/disabled.
It seems very simple and it compiles just fine. But when I try to run
it it says "Invalid Character" in line 15 (I marked the line in the
code - the one with the execute immediate).
I cant see anything wrong in this line.
Can anyone see whats the problem here ?
Thanks
Guy
CREATE OR REPLACE procedure alter_constraints (action varchar2) is
cursor cons is select constraint_name,table_name from user_constraints where constraint_type='R';
str varchar2(150); i number; inner_action varchar2(50); begin inner_action:=action; for i in cons loop str:='alter table '||i.table_name||' '||inner_action||' constraint '||i.constraint_name; dbms_output.put_line(str); -- this is the problematic line -- | | -- v v EXECUTE IMMEDIATE str; end loop;