L'utilitaire de nettoyage de la base de données permet de supprimer plusieurs objets simultanément. Reportez-vous à la section Nettoyage de la base de données pour déterminer les objets que vous pouvez supprimer. Pour en savoir plus sur les différents types d'objet, reportez-vous à la section sur les types d'objet.
Lorsque l'utilitaire de nettoyage de la base de données supprime un objet, les enregistrements correspondants dans les tables de l'objet sont également supprimés afin de préserver l'intégrité référentielle de la base de données. L'utilitaire de nettoyage de la base de données nettoie la base de données de deux façons : soit de haut en bas, soit de bas en haut. La suppression de haut en bas supprime toutes les lignes des tables enfant selon une cascade de suppressions. Si
une restriction de suppression est spécifiée dans l'intégrité référentielle, la cascade de suppressions échoue et vous
devez utiliser la méthode de suppression de bas en haut. Pour utiliser la méthode de suppression de bas en haut, spécifiez yes pour le paramètre
force
FORCE dans la syntaxe de l'instruction. Celle-ci commence par supprimer les tables enfant, puis la table parent.
Un autre moyen de déclencher la méthode de suppression de bas en haut consiste à spécifier le paramètre
loglevel
LOGLEVEL
avec la valeur 2 dans la syntaxe d'instruction. L'option 0 ne consigne rien et l'option
1
consigne uniquement les instructions de suppression de la table de niveau supérieur.
loglevel
LOGLEVEL
2 consigne les instructions de suppression lancée à partir de chaque table enfant supprimée jusqu'à la table de niveau
supérieur.
Bien que la sélection de 2 déclenche la méthode de suppression de bas en haut, elle ne peut garantir une suppression réussie s'il y a une restriction de suppression dans l'intégrité référentielle. Pour supprimer des
enregistrements avec une restriction de suppression, spécifiez yes pour le paramètre
force
FORCE.
Attendez-vous à un temps de réponse plus long avec la méthode de suppression de bas en haut si la table contient de nombreuses tables enfant. Par exemple, la table MEMBER contient plus de 500 tables enfant. Pour des raisons de performances, nous vous recommandons d'utiliser la méthode de suppression de haut en bas.
L'utilitaire de nettoyage de la base de données est configurable, extensible et adaptable. Hormis les configurations prédéfinies, vous pouvez ajouter de nouveaux objets à la table de la base de données CLEANCONF pour définir quelles tables et lignes doivent être nettoyées. Pour plus de détails, reportez-vous à la section Ajout d'une nouvelle configuration à l'utilitaire de nettoyage de la base de données.
Si vous avez développé votre schéma de base de données en créant de nouvelles tables, vous pouvez faire appel à l'utilitaire de nettoyage de la base de données pour nettoyer ces dernières. Si vous avez modifié votre schéma de base de données (par exemple en ajoutant de nouvelles colonnes à une table, en modifiant la relation clé externe/clé primaire ou en ajoutant une nouvelle table enfant au chemin d'intégrité référentielle), l'utilitaire de nettoyage de la base de données s'adaptera automatiquement aux changements. Si vous changez le nom des colonnes, mettez à jour les données de configuration dans la table CLEANCONF.
L'utilitaire de nettoyage de la base de données supprime les enregistrements dans les tables enfant en se fondant sur la règle de suppression de la définition d'intégrité référentielle du schéma de la base de données. Vous pouvez fixer la règle de suppression à on delete cascade, on delete set null ou on delete restrict. Si vous ajoutez de nouvelles tables, assurez-vous que l'intégrité référentielle et la règle de suppression sont correctement définies. Dans le cas contraire, l'utilitaire de nettoyage de la base de données ne pourra pas fonctionner avec vos nouvelles tables.
Remarque : Vous ne devez exécuter l'utilitaire de nettoyage de la base de données que sur un serveur de transfert pour nettoyer l'objet staglog. La base de données de transfert est différente de la base de données de production. La base de données de transfert contient seulement des données de configuration sans les données d'exploitation. La suppression de données de configuration peut entraîner des suppressions en cascade dans les données d'exploitation. Quand l'utilitaire de propagation de transfert propage la suppression à la base de données d'exploitation, il peut se produire une suppression en cascade des données d'exploitation (que vous voulez garder). Pour nettoyer les données de configuration, exécutez l'utilitaire de nettoyage de la base de données dans la base de données d'exploitation.
![]() |