sql >> Database >  >> RDS >> Oracle

Hoe verwijder je een vreemde tabel met de naam BIN$c+eOnMB3RbKSEfg/rsxtAQ==$0 uit de Oracle-database?

Wat u ziet is een verwijderde tabel in de RECYCLEBIN

Mogelijk krijgt u met deze vraag de originele naam van de tabel

SELECT original_name FROM RECYCLEBIN where OBJECT_NAME = 'BIN$c+eOnMB3RbKSEfg/rsxtAQ==$0';

Merk op dat (met uw parameterinstelling) als u een tabel DROP maakt, deze niet volledig wordt verwijderd, maar verplaatst in de prullenbak.

U kunt dit weglaten met de PURGE optie.

DROP TABEL xxx PURGE;

Om de tabel uit de prullenbak te verwijderen, moet u de naam tussen dubbele aanhalingstekens plaatsen (aangezien dit geen geldige naam is) en gebruik de PURGE-instructie (geen DROP - die ORA-38301: can not perform DDL/DML over objects in Recycle Bin ).

PURGE TABLE "BIN$c+eOnMB3RbKSEfg/rsxtAQ==$0"

Als alternatief kunt u de original_name . gebruiken verkregen met de bovenstaande vraag:

PURGE TABLE {your_original_name};

Gebruik deze verklaring om de prullenbak volledig op te ruimen (met de juiste tabelgebruiker)

PURGE RECYCLEBIN;



  1. database neemt de tabel niet aan

  2. Optimaliseer MySQL-query's met veel LEFT JOINs en GROUP BY

  3. H2- en Oracle-compatibiliteitsproblemen

  4. Kan object niet neerzetten omdat ernaar wordt verwezen door een FOREIGN KEY-beperking - SQL Server / TSQL-zelfstudie, deel 74