web-dev-qa-db-fra.com

Différence entre goutte et goutte purge dans Oracle

J'utilise Oracle Database et je suis un peu confus au sujet des commandes de suppression et de purge. En fait, pour moi, les deux font la même chose. Supprime la table avec schéma de la base de données. Quelle est la principale différence entre ces deux?

  1. Drop Table Nom de la table;
  2. Drop Table Nom de la table Purge;
20
user769394

Normalement, une table est déplacée dans la corbeille (à partir d'Oracle 10g), si elle est supprimée. Toutefois, si le modificateur de purge est également spécifié, la table est supprimée de manière irréversible (entièrement) de la base de données.

38
Randy

Oracle Database 10g introduit une nouvelle fonctionnalité pour la suppression de tables. Lorsque vous supprimez une table, la base de données ne libère pas immédiatement l'espace associé à la table Au lieu de cela, la base de données renomme la table et la place dans une corbeille où elle pourra être récupérée plus tard avec l'instruction FLASHBACK TABLE si vous constatez que vous avez laissé tomber la table par erreur. Si vous souhaitez libérer immédiatement l’espace associé à la table à ce moment-làVous émettez l’instruction DROP TABLE, puis incluez la clause PURGE comme suit. si vous voulez supprimer la table et libérer l’espace qui lui est associé en une seule étape. Si vous spécifiez PURGE, la base de données ne le fait pas placez la table et ses objets dépendants dans la corbeille . REMARQUE: vous ne pouvez pas restaurer une instruction DROP TABLE avec la clause PURGE Ni récupérer la table si vous la déposez avec la clause PURGE. Cette fonctionnalité N'était pas disponible dans les versions précédentes.

6
Vignesh

Un lien vers l'article asktom: http://asktom.Oracle.com/pls/asktom/f?p=100:11::::::P11_QUESTION_ID:32543538041420

En gros, avec Oracle10, toutes les tables supprimées vont dans la corbeille à partir de laquelle elles peuvent être non-arrêtées. Avec purge, vous sautez la partie de la corbeille et vous laissez tomber la table sans option pour annuler l'action.

3
phil
SQL>drop table table_name;

Cette commande supprime la table nommée nom_table, mais elle est déplacée en interne vers la corbeille d’Oracle (ce qui revient à supprimer un fichier/dossier à l’aide de Delete clé sur Windows OS).
Avantages:
1. Nous serons en mesure de restaurer la table supprimée ci-dessus si nécessaire.
Inconvénients:
1. Occupe encore une certaine quantité de mémoire.

SQL>drop table table_name purge;

Cette commande supprime complètement la table nom_table de la base de données (ce qui revient à supprimer tout fichier/dossier en utilisant Shift + Delete touche sur Windows OS).

Les avantages et les inconvénients seront le vice-vers de ce qui précède.

0
Devaraj B

La déclaration ci-dessous laissera tomber la table et la placera dans la corbeille.

DROP TABLE emp_new;

La déclaration ci-dessous laissera tomber la table et la jettera également de la corbeille.

DROP TABLE emp_new PURGE;

0
Danish Rizvi