ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态
SQL> drop user aaa ;
drop user aaa
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态
ORA-06512: 在 line 21
SQL> alter procedure WMSYS.NO_VM_DROP_PROC disable;
alter procedure WMSYS.NO_VM_DROP_PROC disable
ORA-00922: 选项缺失或无效
SQL> alter procedure WMSYS.NO_VM_DROP_PROC DISABLE;
alter procedure WMSYS.NO_VM_DROP_PROC DISABLE
ORA-00922: 选项缺失或无效
SQL> ALTER TRIGGER wmsys.NO_VM_DDL DISABLE;
Trigger altered
SQL> ALTER TRIGGER wmsys.NO_VM_DROP_A DISABLE;
ALTER TRIGGER wmsys.NO_VM_DROP_A DISABLE
ORA-04080: 触发器 'NO_VM_DROP_A' 不存在
SQL> drop user aaa ;
User dropped
SQL> purge recyclebin;
Done
SQL>
metlink引用文档
![]() |
ORA-06576 error during Drop User (文档 ID 1498610.1) |
In this Document
| Symptoms |
| Cause |
| Solution |
| References |
APPLIES TO:
Oracle Server - Enterprise Edition - Version 10.2.0.1 and later
Information in this document applies to any platform.
SYMPTOMS
Dropping a user schema results in below errors:
SQL> drop user GG_ADMIN; DROP USER "GG_ADMIN"
Error at line 2
ORA-00604: error occurred at recursive SQL level 1
ORA-06576: not a valid function or procedure name
ORA-06512: at line 21 gg_admin cascade;
CAUSE
A DDL trigger is defined on the drop statement.
Next query will get you the definition of the DDL Triggers in the system.
SQL> connect / as sysdba SQL> SELECT a.obj#, a.sys_evts, b.name FROM trigger$ a,obj$ b WHERE a.sys_evts > 0 AND a.obj#=b.obj# AND baseobject = 0; OBJ# SYS_EVTS NAME
---------- ---------- ------------------------------
81794 8 LOGON_DATE
81795 8416 NO_VM_DDL
81796 128 NO_VM_DROP_A
13177 8192 AW_REN_TRG
13179 128 AW_DROP_TRG
11990 524256 LOGMNRGGC_TRIGGER
13175 4096 AW_TRUNC_TRG
71787 1 MGMT_STARTUP
Get an errorstack for ORA-06576 error:
SQL> alter system set events='6576 trace name errorstack level 3';
SQL> drop user <username>
When executing 'drop user gg_admin', the resultant trace file shows the failing statement is a call to wmsys.no_vm_drop_proc('USER', 'GG_ADMIN', '').
From errorstack trace file we could observe the following:
if (s_event='CREATE') then
execute immediate 'call wmsys.no_vm_create_proc(''' || sys.dictionary_obj_type || ''', ''' ||
sys.dictionary_obj_name || ''', ''' || sys.dictionary_obj_owner || ''')' ;
elsif (s_event='DROP') then
execute immediate 'call wmsys.no_vm_drop_proc(''' || sys.dictionary_obj_type || ''', ''' ||
sys.dictionary_obj_name || ''', ''' || sys.dictionary_obj_owner || ''')' ;
The triggers enabled for this were in this case NO_VM_DDL and NO_VM_DROP_A
SOLUTION
Check if there are any DROP BEFORE triggers enabled. Once you drop the trigger, it will allow you to drop the user.
Workaround would be:
SQL> ALTER TRIGGER NO_VM_DDL DISABLE;
SQL> ALTER TRIGGER NO_VM_DROP_A DISABLE;
SQL> drop user gg_admin;
REFERENCES
NOTE:75206.1 - OERR: ORA-6576 not a function or procedure
ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态的更多相关文章
- ORA-06575:程序包或函数处于无效状态
今天一个朋友问我下面这段sql语句的问题,我发现了他竟然把程序员的编程思想带入了oracle,虽然是错误的,但也是很经典的错误啊. create or replace package p_view_p ...
- R--基本统计分析方法(包及函数)
摘要:目前经典的统计学分析方法主要有回归分析,Logistic回归,决策树,支持向量机,聚类分析,关联分析,主成分分析,对应分析,因子分析等,那么对于这些经典的分析方法在R中的使用主要有那些程序包及函 ...
- Oracle学习笔记十二 子程序(存储过程、自定函数)和程序包
子程序 子程序:命名的 PL/SQL 块,编译并存储在数据库中. 子程序的各个部分: 1.声明部分 2.可执行部分 3.异常处理部分(可选) 子程序的分类: 1.过程 - 执行某些操作 2.函数 ...
- ORA-04044: 此处不允许过程, 函数, 程序包或类型和
用Orale代码建表时,出现 SQL> comment on column SCORE.cno 2 is '学号(外键)';comment on column SCORE.cno is '学号( ...
- Oracle编程入门经典 第11章 过程、函数和程序包
目录 11.1 优势和利益... 1 11.2 过程... 1 11.2.1 语法... 2 11.2.2 建立或者替换... 2 11.2 ...
- Oracle学习笔记十四 内置程序包
扩展数据库的功能 为 PL/SQL 提供对 SQL 功能的访问 用户 SYS 拥有所有程序包 是公有同义词 可以由任何用户访问 一些内置程序包 程序包名称 说明 STANDARD和DBMS_STAND ...
- 设置R启动时自动加载常用的包或函数
在我前面的文章(http://www.cnblogs.com/homewch/p/5749850.html)中有提到R可以自定义启动环境,需要修改R安装文件中的ect文件夹下的配置文件Rprofile ...
- 如何在windows中编写R程序包(转载)
网上有不少R包的编译过程介绍,挑选了一篇比较详细的,做了稍许修改后转载至此,与大家分享 如何在windows中编写R程序包 created by helixcn modified by binaryf ...
- Oracle基础<4>--程序包
一:程序包定义(包括1.程序包规范 2.程序包主体) 程序包是一种数据库对象,它是对相关pl/sql 类型.子程序.游标.异常.变量和常量的封装. 1.程序包规范:可以声明类型.变量.常量.异常.游标 ...
随机推荐
- Method Swizzing中一般替换方法都写在Category类别里吗?有没有别的实现方式
Method Swizzing中一般替换方法都写在Category类别里吗?有没有别的实现方式 Method Swizzing中一般替换方法都写在Category类别里吗?有没有别的实现方式 > ...
- 织梦CMS调用文章第一张图片(非缩略图)终极方法
之前,网上流传了很多在织梦CMS中调用第一张图片的方法,但大体都一样.即删除缩略图字符串,并添加后缀.然而这种方法仅限于jpg图片或其他单独图片类的调用.如果一个站有png.JPG.gif等多种格式. ...
- Mojo Associated Interfaces
Mojo Associated Interfaces yzshen@chromium.org 02/22/2017 Background Before associated interfaces ar ...
- CentOS7-1810 系统Samba配置说明
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件.SMB(Server Messages Block,信息服务块)通信协议是微软(Microsoft)和英特尔(Intel)在198 ...
- tf.nn.softmax(logits,name=None)
tf.nn.softmax( logits, axis=None, name=None, dim=None #dim在后来改掉了 ) 通过Softmax回归,将logistic的预测二分类的概率的问题 ...
- php 自带加密函数 mcrypt_encrypt
<?php /** * AES128加解密类 * @author dy * */ class Aes{ //密钥 private $_secrect_key; public function _ ...
- 20180929 北京大学 人工智能实践:Tensorflow笔记03
更改的程序部分如下: 另: 难?????????????见链接: https://www.bilibili.com/video/av22530538/?p=17 + (完)
- OpenCV图像处理篇之腐蚀与膨胀
转载请注明出处:http://xiahouzuoxin.github.io/notes 腐蚀与膨胀 腐蚀和膨胀是图像的形态学处理中最主要的操作,之后遇见的开操作和闭操作都是腐蚀和膨胀操作的结合运算. ...
- Invalid command 'WSGIScriptAlias', perhaps misspelled or defined by a module not included in the ser
没有Include wsgi,执行: sudo a2enmod wsgi 可能出现以下的错误 ERROR: Module mod-wsgi does not exist! 安装 libapache2- ...
- 最全Pycharm教程(10)——Pycharm调试器总篇
最全Pycharm教程(1)--定制外观 最全Pycharm教程(2)--代码风格 最全Pycharm教程(3)--代码的调试.执行 最全Pycharm教程(4)--有关Python解释器的相关配置 ...
