日期:2014-05-17  浏览次数:20787 次

数据库中如何让日期按要求自动更新?
我做个值班表,数据库里存姓名和值班日期和周期,怎么实现值班日期过了自动加周期变成下一个值班日期?用什么方法触发过了0点变动日期

------解决方案--------------------
用job,一天执行一次。
------解决方案--------------------
SQL code
--创建一个更新记录的存储过程
create or replace procedure mypro as
begin
update table ...;
end;
/

--创建JOB,实现每天的午夜0点更新值班日期。

variable job number;
begin
dbms_job.submit(
job=>      job,
what=>     'mypro;',
next_date=>to_date('20-03-2012 16:52:06', 'dd-mm-yyyy hh24:mi:ss'),
interval=>'trunc(sysdate)+1');
commit;
end;
/

------解决方案--------------------
写一个存储过程。里面实现自动根据当前系统时间进行值班表的安排。

然后定义一个作业,按你的周期,定期执行。