2011-05-17 121 views
1

我定義一個變量, 「userdata.sql」,其內容是執行sql腳本時出錯!

SET DEFINE ON; 
DEFINE name = Gaurav 
DEFINE today =10/10/2011 --variable that contain date value. 

========================== ================================================== ======

我創建一個名爲其他文件xyz.sql

@userdata.sql 
DECLARE 
v_date DATE; 
v_name varchar2(10); 
BEGIN 
v_date:='&today'; 
v_name:='&name'; 
dbms_output.put_line('name is '||v_name); 
dbms_output.put_line('date is '||v_date); 
end; 

在xyz.sql它拋出一個錯誤 ORA-01840的輸入值不夠長日期格式的執行。 請建議解決方案。 我使用的RDBMS是ORACLE

回答

2

改變這一行:

v_date:='&today'; 

到:

v_date:=to_date('&today','DD/MM/YYYY'); 

即指定日期的格式(也可能是 'MM/DD/YYYY' 代替) 。