Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> dynamic sql and dates
Hi
I am using dynamic sql in a stored procedure which inserts dates into a table.
The procedure is as follows:
create or replace procedure ins_date
is
l_date date := sysdate;
l_sql varchar2(1000);
begin
l_sql := 'insert into kk ' || chr(10) || 'select '|| l_date ||' from dual';dbms_output.put_line(l_sql);
kk is a table with a column (datatype date)
whenever I execute I get this error
SQL> exec ins_date
insert into kk
select 20070125 17:11:47 from dual
BEGIN ins_date; END;
*
ERROR at line 1:
ORA-00923: FROM keyword not found where expected ORA-06512: at "LSC.INS_DATE", line 9 ORA-06512: at line 1
If I change the procedure to
create or replace procedure ins_date
is
l_date date := sysdate;
l_sql varchar2(1000);
begin
l_sql := 'insert into kk ' || chr(10) || 'select sysdate from dual';dbms_output.put_line(l_sql);
it runs perfectly
exec ins_date
insert into kk
select sysdate from dual
PL/SQL procedure successfully completed.
Anyone know what can be wrong?
TIA
-- LSC -- http://www.freelists.org/webpage/oracle-lReceived on Thu Jan 25 2007 - 10:12:53 CST
![]() |
![]() |