今天我尝试了一下oracle的job,做了个简单的应用,出现点问题想不明白,请求各位大大为我解惑.
答案满意直接100分奉上写出我的步骤如下:
1.创建job_test表,jobtest_sequence用于测试。表字段id number(8),insert_date varchar2(20)
2.创建存储过程job_test_pro,代码如下:create or replace procedure job_test_pro
as
begin
insert into job_test values(jobtest_sequence.nextval,to_char(sysdate,'yyyy-MM-dd hh24:mm:ss'));3.创建job,命令类型选择为存储过程,然后设置了每分钟重复调用存储过程job_test_pro。
4.运行job。
然后,过了几分钟以后我去查表job_test,发现确实是插入了数据,但插入的数据都是如下的样子:
id insert_date
1 2010-02-08 16:02:07
2 2010-02-08 16:02:07
3 2010-02-08 16:02:07
4 2010-02-08 16:02:07
5 2010-02-08 16:02:07
6 2010-02-08 16:02:07
7 2010-02-08 16:02:07
我的问题是为什么没有把job执行的时候的系统当前时间取出来插入到测试表中呢?为什么会一直插入job第一次执行时的时间呢 ?
查看了job日志,执行时间确实是每分钟一次,日志时间记录也是ok的
答案满意直接100分奉上写出我的步骤如下:
1.创建job_test表,jobtest_sequence用于测试。表字段id number(8),insert_date varchar2(20)
2.创建存储过程job_test_pro,代码如下:create or replace procedure job_test_pro
as
begin
insert into job_test values(jobtest_sequence.nextval,to_char(sysdate,'yyyy-MM-dd hh24:mm:ss'));3.创建job,命令类型选择为存储过程,然后设置了每分钟重复调用存储过程job_test_pro。
4.运行job。
然后,过了几分钟以后我去查表job_test,发现确实是插入了数据,但插入的数据都是如下的样子:
id insert_date
1 2010-02-08 16:02:07
2 2010-02-08 16:02:07
3 2010-02-08 16:02:07
4 2010-02-08 16:02:07
5 2010-02-08 16:02:07
6 2010-02-08 16:02:07
7 2010-02-08 16:02:07
我的问题是为什么没有把job执行的时候的系统当前时间取出来插入到测试表中呢?为什么会一直插入job第一次执行时的时间呢 ?
查看了job日志,执行时间确实是每分钟一次,日志时间记录也是ok的
as
begin
insert into job_test values(jobtest_sequence.nextval,to_char(sysdate,'yyyy-MM-dd hh24:mm:ss'));
end
/
求赐教~~~~
create or replace procedure job_test_pro
as
begin
insert into job_test values(jobtest_sequence.nextval,to_char(sysdate,'yyyy-MM-dd hh24:mi:ss'));
hh24:mm:ss----->hh24:mi:ss
结果不同,见下:在oracle中好像没有“yyyy-MM-dd hh24:mm:ss”,这个好像是java中的,
这样的日期格式写法,
应该修改为“yyyy-MM-dd hh24:mi:ss”。
已用时间: 00: 00: 00.04
SQL> select to_char(sysdate,'yyyy-MM-dd hh24:mi:ss') from dual;TO_CHAR(SYSDATE,'YY
-------------------
2010-02-08 17:36:46已用时间: 00: 00: 00.03SQL> select to_char(sysdate,'yyyy-MM-dd hh24:mm:ss') from dualTO_CHAR(SYSDATE,'YY
-------------------
2010-02-08 17:02:55已用时间: 00: 00: 00.00
-------------------
2010-02-08 17:02:55SQL> select to_char(sysdate,'yyyy-MM-dd hh24:mm:ss') 世界末日 from dual;世界末日
-------------------
2010-02-08 17:02:02SQL> select to_char(sysdate,'yyyy-MM-dd hh24:mm:ss') 世界末日 from dual;世界末日
-------------------
2010-02-08 17:02:15SQL> select to_char(sysdate,'yyyy-MM-dd hh24:mm:ss') 世界末日 from dual;世界末日
-------------------
2010-02-08 17:02:19SQL>楼主的秒都不变?