Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Can't run "execute immediate" in PL/SQL
Your code works as shown for me on 9.2
-- Niall Litchfield Oracle DBA Audit Commission UK ***************************************** Please include version and platform and SQL where applicable It makes life easier and increases the likelihood of a good answer ****************************************** "Guy" <ni4ni_at_hotmail.com> wrote in message news:d2eb532b.0212190158.1858d489_at_posting.google.com...Received on Thu Dec 19 2002 - 04:16:22 CST
> 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;
> end;
> /
![]() |
![]() |