Jeudi 26 août 2010 4 26 /08 /Août /2010 22:42

 

FLASHBACK TABLE et DROP TABLE avec le RECYCLEBIN.

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.

 

Suppression de la table avec DROP TABLE.

 

SQL> DROP TABLE vente;
ou
SQL> DROP TABLE vente PURGE;

Attention, avec l'option PURGE la table supprimée ne sera pas deposée dans le recycle bin, donc pas de FLASHBACK possible.

 

Interrogation du recyclebin.

 

SQL> SELECT * FROM recyclebin;
ou
SQL> SELECT * FROM dba_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

 

On peut directement lire les enregistrements de la table supprimée.

 

SQL> SELECT * FROM "BIN$tkxANatoTdO3nrKK+d2lpw==$0";

 

Maintenant nous avons le choix de purger la corbeille.

 

SQL> PURGE RECYCLEBIN;
ou
SQL> PURGE DBA_RECYCLEBIN;
ou
SQL> PURGE TABLE VENTE;
ou
SQL> PURGE TABLE "BIN$tkxANatoTdO3nrKK+d2lpw==$0";

Attention, il faut être connecté as sysdba pour purger les objets supprimées de toute la base de données (DBA_RECYCLEBIN).

 

Ou alors nous pouvons restaurer la table avec FLASHBACK TABLE.

 

SQL> FLASHBACK TABLE vente TO BEFORE DROP;
ou
SQL> FLASHBACK TABLE vente TO BEFORE DROP RENAME TO vente_old;
ou
SQL> FLASHBACK TABLE "BIN$tkxANatoTdO3nrKK+d2lpw==$0" TO BEFORE DROP RENAME TO vente_old;

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
Par Daniel Roesch - Publié dans : TABLES - INDEX
Ecrire un commentaire - Voir les 0 commentaires
Retour à l'accueil

Rechercher Articles Oracle SQL sur ce Site.

Loading

À lire aussi…

Download PDF Oracle

Rechercher sur le site

Oracle 10G - DBA -

Syndication

  • Flux RSS des articles
Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus - Articles les plus commentés