oracle触发器、序列、任务计划练习一例
admin
2023-05-14 11:22:19
0

今天在闲暇时间练习了一下oracle任务计划,具体详情如下

1.创建表 TBL_TIME

create table tbl_time(

id number not null,    /*id号*/

vsecond varchar2(2),   /* 秒*/

vtime varchar2(10)    /*当前时间*/

)

2.创建序列 seq_tbltime

create sequence seq_tbltime

start with 1

increment by 1

nomaxvalue

nocycle

cache 20

3.创建触发器 tr_tbltimeseq

create or replace trigger tr_tbltimeseq

/*

功能描述:在插入数据之前利用seq_tbltime

序列使表tbl_time(id)实现递增

*/

before insert on tbl_time

for each row

  begin

    select seq_tbltime.nextval into :new.id from dual; 

    end tr_tbltimeseq;

   
4.创建存储过程 proc_addtime

create  or replace procedure proc_addtime

/*

功能描述:在一分钟之内每过5秒钟向

表tbl_time插入当前时间点

*/

as

d_time1 date;

d_time2 date;

n_timediff number(2);

i number(2);

begin

  select sysdate into d_time1 from dual;

  insert into tbl_time values(1,to_char(d_time1,'ss'),to_char(d_time1,'yyyymmddhhss'));

  i:=5;

  while i<=60 loop

    select sysdate into d_time2 from dual;

    select round(to_number(d_time2 - d_time1) * 24 * 60 * 60) into n_timediff from dual;

    if n_timediff=i  then

          insert into tbl_time values(1,to_char(d_time2,'ss'),to_char(d_time2,'yyyymmddhhss'));

          i:=i+5;

       end if;

    end loop;

     exception 

      when others

        then

          rollback;

     commit;

end;

5.创建任务计划

variable n number;

/*添加任务计划,该计划立即开始,之后每五分钟执行一次计划任务*/

begin 

    dbms_job.submit(:n,'proc_addtime;',sysdate,'sysdate + 5/(24*60)');

   commit;

end;


执行结果如下

SQL> select * from tbl_time;

 

        ID VSECOND VTIME

---------- ------- --------------------

         1 09      201407030509

         2 14      201407030514

         3 19      201407030519

         4 24      201407030524

         5 29      201407030529

         6 34      201407030534

         7 39      201407030539

         8 44      201407030544

         9 49      201407030549

相关内容

热门资讯

“2026年顶流CEO”,暂未... 作者 | 第一财经 王珍用AI把自己的头像变为女生来回应“不是美女、为何天天刷屏”、被质疑后回应“有...
追觅全球卖爆的背后,藏着一套用... 作为连续8年实现100%增长的科技公司,如今的追觅早已形成了一种体系化的增长能力。从扫地机、洗地机,...
河南牧业经济学院工会组织观看残... 在第三十六个全国助残日来临之际,5月13日,河南牧业经济学院工会联合党委宣传部、机关党委,组织该校教...
原创 马... 文|避寒 编辑|避涵 2026年1月那场特斯拉财报会,马斯克脸色没怎么笑。他对着股东说了句:"人...
京东方8.6代OLED项目本月... 近年来越来越多的笔记本开始搭载OLED屏幕,同时OLED屏幕也不再是旗舰笔记本的专属,因此行业对于O...
央视6000万美元拿下世界杯转... (文/张志峰 编辑/周远方)5月12日,北京,央视与国际足联关于美加墨世界杯中国大陆地区转播权的最后...
牵手30多年,“好学生”变成了... 苏州工业园区,是中国和新加坡两国政府间的首个合作项目,也是中国与APEC成员新加坡合作的典范。从投资...
高市早苗赶忙和特朗普通电话 据央视新闻报道,5月15日下午,美国总统特朗普结束对中国的国事访问,乘专机离开北京。当地时间5月15...
Al将如何重塑照明行业?这份行... “在全球数字化转型与人工智能技术深度融合的浪潮下,照明行业正经历着从‘被动节能设备’向‘主动智能服务...
原创 科... 厄尔尼诺的级别还在提升?这不,科学家预测,“哥斯拉级”厄尔尼诺正在酝酿,这是什么情况? 这些词语把很...