可以创建一个系统触发器来实现你的第一问题(必须要有ADMINISTER DATABASE TRIGGER权限):CREATE OR REPLACE TRIGGER StartupDatabaseTrigger AFTER TARTUP ON DATABASE BEGIN --你自己的代码; END StartupDatabaseTrigger; 至于第二个问题:DBMS_JOB.SUBMIT(:v_JobNum, 'yourProcedure',SYSDATE,'trunc(SYSDATE)+1');
1、 create trigger tri_name login on database begin 过程名; end;2、 SQL> create or replace procedure pro 2 is 3 begin 4 insert into aa values(1,sysdate); 5 end; 6 /Procedure created declare jobno number; begin dbms_job.submit(jobno,'pro;',sysdate,'trunc(sysdate)+2'); commit; end; /
2、指定这种有规律的运行是job的工作范围。
AFTER TARTUP ON DATABASE
BEGIN
--你自己的代码;
END StartupDatabaseTrigger;
至于第二个问题:DBMS_JOB.SUBMIT(:v_JobNum, 'yourProcedure',SYSDATE,'trunc(SYSDATE)+1');
create trigger tri_name
login on database
begin
过程名;
end;2、
SQL> create or replace procedure pro
2 is
3 begin
4 insert into aa values(1,sysdate);
5 end;
6 /Procedure created
declare
jobno number;
begin
dbms_job.submit(jobno,'pro;',sysdate,'trunc(sysdate)+2');
commit;
end;
/