我想定时让 oracle 执行一段sql语句 怎么做

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想定时让 oracle 执行一段sql语句 怎么做相关的知识,希望对你有一定的参考价值。

如:定时删除三分钟前的数据

###   1.创建存储过程
SQL> create or replace procedure pro_delete_a as
2  begin
3  delete from a t where t.a < (sysdate-3/1440);  ###一天1440分钟。即一分钟是 1/1440
4  end;
5  /

Procedure created
###  2创建job
SQL> variable job_pro_delete_a number;
SQL> begin
2  dbms_job.submit(:job_pro_delete_a,\'pro_delete_a;\',sysdate,\'sysdate+3/1440\');
3  end;
4  /

PL/SQL procedure successfully completed
job_pro_delete_a
---------
127

###  3.调用job
SQL> begin
2  dbms_job.run(:job_pro_delete_a);
3  end;
4  /

PL/SQL procedure successfully completed
job_pro_delete_a
---------
127

###  4.删除job
SQL> begin 
2 dbms_job.remove(:job_pro_delete_a); 
3 end; 
4 /
Ps:select * from user_jobs;
dbms_job.remove(ID);
参考技术A 1
在oracle用户下创建一个脚本cc.sh
vim cc.sh

#!/bin/bash
./home/oracle/.bash_profile
sqlplus scott/tiger<<!
create table t1 as select * from emp where 1=2;
exit;
!

2
将脚本cc.sh加载到计划任务中(比如:每天8:30执行脚本,创建表t1)
crontab -e
30 8 * * * /home/oracle/cc.sh本回答被提问者和网友采纳
参考技术B 可以增加Oracle job,你百度一下Oracle job

plsql F5执行计划怎么看

plsql F5后的执行计划看不懂啊,哪位高手帮我分析分析这个执行计划?

参考技术A 打开PL/SQL Developer软件,请确保plsql能够成功连接到一个oracle数据库。

在PL/SQL Developer中写好一段SQL代码,按F5,或者点击“执行执行计划”图标,PL/SQL Developer会自动打开执行计划窗口,显示该SQL的执行计划。

3
可以看到窗口上方是sql语句,下方显示执行计划表格。表格的列主要包含描述、用户、对象、成本花费、IO开销等,表格,当然表格列还可以自定义。表格的行包含了查询逻辑的执行顺序和各个步骤信息。

以上是关于我想定时让 oracle 执行一段sql语句 怎么做的主要内容,如果未能解决你的问题,请参考以下文章

php 判断一个字段是不是为空,为空的话执行一段sql语句

如何查询oracle数据库的操作记录?

plsql F5执行计划怎么看

oracle 中怎样查看以前执行过的SQL语句?

有人知道怎么查看oracle,正在执行的语句吗?

oracle如何执行多条create 语句