一、问题描述
需求要通过JOB定时执行DDL语句(purge recyclbin),来实现清空回收站。简单的问题,由于语法不了解所以报错:ORA-06550 & PLS-00103。让我们来看一下如何在JOB中执行DDL语句的正确语法。
二、测试
1.建立JOB
BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"', job_type => 'PLSQL_BLOCK', job_action => 'begin purge recyclebin; end; ', number_of_arguments => 0, start_date => NULL, repeat_interval => 'FREQ=WEEKLY;BYDAY=SUN;BYHOUR=0;BYMINUTE=0;BYSECOND=0', end_date => NULL, enabled => FALSE, auto_drop => FALSE, comments => '每周清理回收站'); DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"', attribute => 'logging_level', value => DBMS_SCHEDULER.LOGGING_OFF); DBMS_SCHEDULER.enable( name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"'); END; /
2.执行该JOB报错
BEGIN DBMS_SCHEDULER.RUN_JOB(job_name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"', USE_CURRENT_SESSION => FALSE); END; 报错信息如下: ORA-06550: line 2, column 7: PLS-00103: Encountered the symbol "RECYCLEBIN" when expecting one of the following: := . ( @ % ; result_cache The symbol ":=" was substituted for "RECYCLEBIN" to continue.
3.修改为正确执行方式,重点修改job_action内容
BEGIN DBMS_SCHEDULER.set_attribute( name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"', attribute => 'job_action', value => 'begin execute immediate ''purge recyclebin''; end; '); END; /
4.再次执行完成(无报错)
BEGIN DBMS_SCHEDULER.RUN_JOB(job_name => '"TEST_USER"."PURGE_RECYCLBIN_TEST"', USE_CURRENT_SESSION => FALSE); END; /
三、总结
通过一个小小的案例,又学习了如何使用JOB去执行DDL语句的语法,学习真是来不了半点马虎,DBA更是如此,在这个数据的海洋中继续前行。Where there is a will there is a way.
编辑推荐:
- 【ERROR】JOB执行DDL语句报错ORA-06550 & PLS-0010303-03
- Oracle Shared Pool Memory Management03-03
- Oracle启动出现了ORA-00119,ORA-0013003-03
- Oracle EBS Interface/API(7)--创建WIP任务单03-03
- 集结阿里云数据库最强阵容 DTCC 2019 八大亮点抢先看03-03
- 万字详解Oracle架构、原理、进程,学会世间再无复杂架构03-03
- ogg报错error 11, Resource temporarily unavailable03-03
- dfas03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- Oracle standby的ORA-01578 ORA-01110 ORA-26040 坑爹的NOLOGGING
- 集结阿里云数据库最强阵容 DTCC 2019 八大亮点抢先看
集结阿里云数据库最强阵容 DTCC 2019 八大亮点抢先看
26-03-03 - 万字详解Oracle架构、原理、进程,学会世间再无复杂架构
万字详解Oracle架构、原理、进程,学会世间再无复杂架构
26-03-03 - ogg报错error 11, Resource temporarily unavailable
- dfas
dfas
26-03-03 - 3-dw_缓慢变化维
3-dw_缓慢变化维
26-03-03 - 宜信DBA实践-SQL优化|一篇文章说清楚Oracle Hint的正确使用姿势
- oracle 固定执行计划
oracle 固定执行计划
26-03-03 - 4-dw_退化维
4-dw_退化维
26-03-03 - Oracle RAC+DG环境搭建(CentOS 7+Oracle 12C)(二)配置远程桌面
