为什么DBMS_JOB.SUBMIT不成功了

[复制链接]
查看11 | 回复5 | 2005-9-8 20:01:13 | 显示全部楼层 |阅读模式
1。
我的目的是每天20:00运行这个JOB。
代码如下:
variable job_update_test number;
begin
dbms_job.submit(:job_update_test,'update_test;',
trunc(to_date('08-09-2005 20:01:13', 'dd-mm-yyyy hh24:mi:ss'),'hh'),sysdate+1);
end;
2。提示如下错误:
begin
*
ERROR 位于第 1 行:
ORA-23319: parameter value "09-9月 -05" is not appropriate
ORA-06512: at "SYS.DBMS_JOB", line 57
ORA-06512: at "SYS.DBMS_JOB", line 129
ORA-06512: at line 2
3。
但是,我执行下面那句话是可以的啊
SQL> select trunc(to_date('08-09-2005 20:01:13', 'dd-mm-yyyy hh24:mi:ss'),'hh') from dual;
TRUNC(TO_D
----------
08-9月 -05

select to_char(trunc(to_date('08-09-2005 20:01:13', 'dd-mm-yyyy hh24:mi:ss'),'hh'),'yyyymmdd hh
from dual
SQL> /
TO_CHAR(TRUNC(TO_
-----------------
20050908 20:00:00
4。请问各位是什么原因,正确的做法应该是怎样的。谢谢
回复

使用道具 举报

千问 | 2005-9-8 20:01:13 | 显示全部楼层
主要是如何将字符转成日期格式
回复

使用道具 举报

千问 | 2005-9-8 20:01:13 | 显示全部楼层
variable job_update_test number;
begin
dbms_job.submit(:job_update_test,'update_test;',
to_char(trunc(to_date('08-09-2005 20:01:13', 'dd-mm-yyyy hh24:mi:ss'),'hh'),'hh24:mi:ss'),sysdate+1);
end;
回复

使用道具 举报

千问 | 2005-9-8 20:01:13 | 显示全部楼层
sysdate+1两边加上单引号,这个值应该是varchar2,不是date
回复

使用道具 举报

千问 | 2005-9-8 20:01:13 | 显示全部楼层
begin
sys.dbms_job.submit(job => :job,

what => 'statspack.snap;',

next_date => to_date('07-09-2005 10:00:00', 'dd-mm-yyyy hh24:mi:ss'),

interval => 'trunc(SYSDATE+1/24,''HH'')');
commit;
end;
/
自己看看吧
回复

使用道具 举报

千问 | 2005-9-8 20:01:13 | 显示全部楼层
谢谢各位,的确是没有加单引号的问题
'sysdate+1'
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行