Comment supprimer une table dans Oracle.
Comment purger la corbeille dans Oracle.
Comment restaurer une table dans Oracle.
Avec la version 10G, Oracle renomme et place dans une Corbeille (RECYCLEBIN) les tables supprimées avec l'instruction LDD/DDL DROP TABLE.
Une petite démonstration sur le RECYCLEBIN, ou nous allons effectuer un DROP TABLE, visualiser la Corbeille, restaurer la table de la Corbeille à l'aide de l'instruction FLASHBACK et purger le RECYCLEBIN.
|
SQL> DROP TABLE vente; |
Attention, avec l'option PURGE la table supprimée ne sera pas deposée dans le recycle bin, donc pas de FLASHBACK possible.
|
SQL> SELECT * FROM recyclebin; |
L'interrogation de la vue recyclebin permet de voir les objets Tables du USER en cours.
L'interrogation de la vue dba_recyclebin permet de voir tous les objets Tables supprimées de la base de données.
| OBJECT_NAME | ORIGINAL_NAME | OPERATION | TYPE |
| BIN$tkxANatoTdO3nrKK+d2lpw==$0 | VENTE | DROP | TABLE |
|
SQL> SELECT * FROM "BIN$tkxANatoTdO3nrKK+d2lpw==$0"; |
|
SQL> PURGE RECYCLEBIN; |
Attention, il faut être connecté as sysdba pour purger les objets supprimées de toute la base de données (DBA_RECYCLEBIN).
|
SQL> FLASHBACK TABLE vente TO BEFORE DROP; |
En ajoutant l'option RENAME TO, on peut restaurer la table sous un autre nom.
Dans le cas ou le RECYCLEBIN possède plusieurs versions de la même table, vous pouvez choisir de restaurer au choix la version
souhaitée à condition de l'appeler par le nom stocké en corbeille.
Les vues DBA_INDEXES et DBA_TABLES contiennent une colonne DROPPED à Y si la table a été droppée.
La corbeille se matérialise par la vue USER_RECYCLEBIN et DBA_RECYCLEBIN.
| Liens en rapport avec l'article et qui sont susceptibles de vous intéresser |
| • ALTER SYSTEM / SESSION SET RECYCLEBIN |