存储过程在sql窗口上直接执行sql语句即可生成,一共可分为七个模块学习:
--<--模块一-->--
create table allmsgtable( id number(20) primary key, createtime date,gjjname varchar(20),inftype varchar(20),commethod varchar(20),total number(20))
--<--模块二-->--
create or replace procedure add_proc is
begin
insert into ALLMSGTABLE
values
(id.nextval,to_date(to_char(sysdate,'yyyymmdd'),'yyyymmdd'), 'gggggjj', '上行', 'CMPP3.0', 20);
commit;
end add_proc;
--<--模块三-->--
declare
job01 number;
begin
sys.dbms_job.submit(
job01,
'add_proc;',
trunc(sysdate+5/1440,‘MI'),
'trunc(sysdate+5/1440,‘MI')'
);
end;
--<--模块四-->--
select * from dba_jobs;
--<--模块五-->--
begin
dbms_job.run(43);
end;
--<--模块六-->--
begin
dbms_job.broken(43, true);
commit;
end;
--<--模块七-->--
begin
dbms_job.remove(43);
end;
每个模块都是单独执行的。
执行模块一,我们将创建一个名为ALLMSGTABLE的具有六个属性的表。
执行模块二,我们将创建一个名为add_proc的存储过程,执行后是向表 allmsgtable中插入一行数据。执行后我们可以在pl/sql的procedures中找到定义的存储过程。
执行模块三,我们将创建一个名为job01的定时任务,该任务每隔五分钟执行一次存储过程add_proc。
执行模块四,我们将对数据库中的定时任务进行查询,并得到相应的任务ID如图中的43。结果:
执行模块五,我们将会开始执行定时任务(ID=43)。
执行模块六,我们将暂停执行定时任务(ID=43)。
执行模块七,我们将删除改定时任务(ID=43)。