Error Description:When deleting users and table spaces, it is reported that ora-55622 does not allow DML, alter and create unique index operations on table “XXX”. The specific error information is as follows:
drop user TJ_CZDJ_GX cascade;
Error reason:After checking, “sys”_ FBA_ TCRV_ The table named “XXX” is the table used by the database file, which is mainly responsible for recording the information of specific operations in a specific time range.
Flashback archive is mainly used to save the change data of some tables for a long time, for auditing, etc. when deleting the table space, you need to close the flashback archive first.
You can use the following statement to see which tables are opened by all users.
select * from dba_flashback_archive_tables;
In addition, you can view the specific error reporting table through the following statement according to the prompt:
select object_id,owner,object_name from dba_objects t where t.object_id=217444;
Among them, 217444 is “sys” in error information_ FBA_ TCRV_ The “XXX” table indicates the contents of XXX.
resolvent:Close the flash file of the corresponding table.
You can close the file of the specified table by the following statement:
alter table XXX no flashback archive;
Because I have multiple tables with flash return files on, for convenience, I can directly build multiple statements to close flash return files and execute them in batches (note that the constructed alter statements are executed under the current user. If you want to execute them under sys, you need to add a user name prefix, that is, the format of user name and table name).
select ‘alter table ‘ || table_name || ‘ no flashback archive ;’
from dba_flashback_archive_tables;
Execute drop user TJ again_ CZDJ_ GX cascade; statement, ora-55622 error is no longer prompted.
In addition, users who cannot delete the current connection will be prompted during execution:
We can go directly to the tool > session and terminate the session that needs to delete the user.