适用于:
Oracle数据库企业版——Version: 11.1.0.6 to 11.2.0.1.0
这个问题可能出现在任何平台
症状
在11g中删除用户你可能出现错误Ora-55622.
SQL> drop user tom cascade;
drop user tom cascade
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-55622: DML, ALTER and CREATE UNIQUE INDEX operations are not allowed on
table "TOM"."SYS_FBA_TCRV_63036"
产生的原因:
用户想要删除那些拥有授权的闪回特征的表
解决方法:
1. 对象引用错误:"TOM"."SYS_FBA_TCRV_63036"
2. 最后一位数字63036是工程的id号在闪回在存档中授权的
SQL> select object_id,owner,object_name from dba_objects where objecT_id=63036;
OBJECT_ID OWNER OBJECT_NAME
---------- ------------------------------ ------------------------------
63036 TOM FDA_TEST
Elapsed: 00:00:00.03
3.找出授权的闪回存档中的所有的表,用户登陆并且运行:
select table_name from user_flashback_archive_tables;
4.所有表里面没有被授权的闪回存档使用下面的命令:
alter table <owner>.<table_name> no flashback archive;
5.执行用户删除命令。