CREATE OR REPLACE PROCEDURE createAnyJob AS
SQL_in VARCHAR2(5000);
tableName_in varchar2(200);
job number;
BEGIN
--1.构造动态创建job的字符串
--构造的过程中需要定一个一个number参数用来接收
--sys.dbms_job.submit函数执行后的返回值
--返回值就是被创建的job的number
SQL_in :=
'declare
job number;
begin ' || '
sys.dbms_job.submit(job,' ||
'what =>' ||'''createanytable;'',' ||
'next_date => to_date(' ||'''24-01-2013 14:36:38'',' || '''dd-mm-yyyy hh24:mi:ss''' || '),' ||
'interval => ' || '''sysdate+1'');' ||
'commit;' ||
'end;';
--测试构造的字符串是否正确
dbms_output.put_line(SQL_in);
--执行字符串命令
EXECUTE IMMEDIATE SQL_in;
--2.直接使用:sys.dbms_job.submit方法创建job
sys.dbms_job.submit(
job,
'createanytable;',
to_date('24-01-2013 14:36:38','dd-mm-yyyy hh24:mi:ss'),
'sysdate+1'
);
commit;
dbms_output.put_line('新创建的job是:'||job);
--注意:job的what所接收的多个值之间必须要使用";"隔开
--即便只有一个末尾也要使用分号
END;
SQL_in VARCHAR2(5000);
tableName_in varchar2(200);
job number;
BEGIN
--1.构造动态创建job的字符串
--构造的过程中需要定一个一个number参数用来接收
--sys.dbms_job.submit函数执行后的返回值
--返回值就是被创建的job的number
SQL_in :=
'declare
job number;
begin ' || '
sys.dbms_job.submit(job,' ||
'what =>' ||'''createanytable;'',' ||
'next_date => to_date(' ||'''24-01-2013 14:36:38'',' || '''dd-mm-yyyy hh24:mi:ss''' || '),' ||
'interval => ' || '''sysdate+1'');' ||
'commit;' ||
'end;';
--测试构造的字符串是否正确
dbms_output.put_line(SQL_in);
--执行字符串命令
EXECUTE IMMEDIATE SQL_in;
--2.直接使用:sys.dbms_job.submit方法创建job
sys.dbms_job.submit(
job,
'createanytable;',
to_date('24-01-2013 14:36:38','dd-mm-yyyy hh24:mi:ss'),
'sysdate+1'
);
commit;
dbms_output.put_line('新创建的job是:'||job);
--注意:job的what所接收的多个值之间必须要使用";"隔开
--即便只有一个末尾也要使用分号
END;