1.建立乙個儲存過程,插入user表一條資料
create or replace procedure auto_insert_timestamp authid current_user is;
begin
//插入一條資料
insert into user("id", "user_id", "cert_no", "cert_notafter_time", "remark", "status", "create_time")
values('11111','userid','certid',20202222,'remark',1,20201111);
//提交
commit;
end auto_insert_timestamp;
2.建立乙個定時器,每分鐘觸發一次儲存過程插入一條資料
job => job, 自動生成job_id
what => 『auto_insert_timestamp;』,需要執行的儲存過程名稱或sql語句
next_date => sysdate+3/(2460), 初次執行時間-下乙個3分鐘
interval => 『trunc(sysdate,』『mi』』)+1/(2460)』 每隔1分鐘執行一次
declare
job number;
begin
dbms_job.submit(
job => job, /*自動生成job_id*/
what => 'auto_insert_timestamp;', /*需要執行的儲存過程名稱或sql語句*/
next_date => sysdate+3/(24*60), /*初次執行時間-下乙個3分鐘*/
interval => 'trunc(sysdate,''mi'')+1/(24*60)' /*每隔1分鐘執行一次*/
); commit;
end;
interval 相關時間處理
interval => trunc(sysdate,』mi』) + 1 / (24*60) ; --每分鐘執行
interval => trunc(sysdate) + 1 +2 / (24); --每天定時執行:每天的凌晨2點執行
interval => trunc(next_day(sysdate,2))+2/24 --每週定時執行:每週一凌晨2點執行(周一為一周的第二天)
interval =>trunc(last_day(sysdate))+1+2/24; --每月定時執行:每月1日凌晨2點執行
interval => trunc(add_months(sysdate,3),『q』) + 2/24; --每季度定時執行:每季度的第一天凌晨2點執行
interval => add_months(trunc(sysdate,『yyyy』),6)+2/24; --每半年定時執行:每年7月1日和1月1日凌晨2點
interval =>add_months(trunc(sysdate,『yyyy』),12)+2/24; --每年定時執行:每年1月1日凌晨2點執行
job相關處理
id:下圖的job欄位對應的值,job的id
dbms_job.remove(id); --根據id刪除某個定時器
dbms_job.run(id); --啟動定時器
dbms_job.broken(id,true) --true y 定時器狀態停止 ;false n 定時器狀態執行。資料庫存n,y如下圖
dbms_job.next_date(id,to_date(『2020-08-03 22:00:00』,『yyyy-mm-dd hh24:mi:ss』)) --修改定時器的下次執行時間
dbms_job.interval(id,『sysdate+1/24』) --修改定時器的間隔時間
dbms_job.what(id,『auto_insert_timestamp ;』) --修改定時器的儲存過程
查詢job相關資訊
MFC 定時器用法
mfc定時器的使用 1.在標頭檔案定義乙個afx msg void ontimer uint ptr nidevent 函式 定義乙個定時器id define systimetimer 1 2.實現該函式 void cminigatetes lg ontimer uint ptr nidevent ...
as3 定時器用法
關鍵字 flas actionscript3.0 雖 然flash擁有越來越強大的周邊功能,但其核心依然是一款動畫製作軟體。在flash設計環境中,不編寫指令碼 也能快速製作出效果驚人的時間軸動 畫。但此類動畫是固定的,無法根據環境動態調整。使用actionscript生成和控制動畫,才能隨心駕馭動...
Linux下的定時器用法
在linux下提供了兩種基本的timer機制 alarm和settimer。1 alarm include unsigned int alarm unsigned int seconds 這是個最簡單的timer,當呼叫了alarm n 時,等待n秒後,就會觸發一次sigalrm訊號,故需要在呼叫a...