• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle job 定时删除某条记录

mysql 搞代码 4年前 (2022-01-09) 12次浏览 已收录 0个评论

1,创建表create table CJ_JT_NSRCPDMDY(ID VARCHAR2(40) not null primary key, CPBH VARCHAR2(80) not null,NSRBH VA

1,创建表
create table CJ_JT_NSRCPDMDY
(
ID VARCHAR2(40) not null primary key,
CPBH VARCHAR2(80) not null,
NSRBH VARCHAR2(80) not null,
BZ VARCHAR2(80)
);

2,测试数据

insert into CJ_JT_NSRCPDMDY values(1,001,001,’启用’);
insert into CJ_JT_NSRCPDMDY values(2,002,002,’启用’);
insert into CJ_JT_NSRCPDMDY values(3,003,003,’不启用’);

3,本文来源[email protected]搞@^&代*@码)网5创建一个删除垃圾记录的存储过程

create or replace procedure mypro as
begin
delete from CJ_JT_NSRCPDMDY where BZ = ‘不启用’;
end;
/
过程已创建
4,,创建JOB,实现每个月第一天的午夜12点删除CJ_JT_NSRCPDMDY中不启用的记录。

variable job number;
begin
dbms_job.submit(:job,’mypro;’,trunc(last_day(sysdate)+1),’trunc(last_day(sysdate)+1)’);
commit;
end;
/

//////////////////////////////////////////////////////////////////
以上即可完成任务,不要往下执行啦。否则,创建作业时,就马上启动作业了。

/////////////////////////////////////////////////////////////////
5,运行JOB
begin
dbms_job.run(:job);
end;
/
过程已成功完成

6,select * from CJ_JT_NSRCPDMDY;
得到预期结果//这个地方应该是查出来3条记录才对,可是已经把不启用的记录提前删除啦。不知道为什么。
7、删除JOB
begin
dbms_job.remove(:job);
end;
/

过程已成功完成


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Oracle job 定时删除某条记录
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址