Je veux supprimer un schéma
Procédure : Méthode « classique »⚓
Je dois être membre de g_admin
ou du groupe producteur[1] du schéma à supprimer.
J’utilise ma méthode habituelle.
Commande SQL
DROP SCHEMA
, fonctionnalité de pgAdmin, fonctionnalité du plugin DBManager de QGIS…Le schéma est automatiquement marqué comme non-existant (
creation
vautFalse
) dans la table de gestion[2].
Si le schéma supprimé n’appartenait pas à la nomenclature nationale[3] (
nomenclature
vautFalse
) ou que je suis membre du groupeg_admin[4]
, je peux maintenant supprimer l’enregistrement correspondant dans la table de gestion.12DELETE FROM z_asgard.gestion_schema_usr
3WHERE nom_schema = '%nom_schema' ;
Il ne reste plus aucune trace du schéma dans la base.
Procédure : Avec la table de gestion d'ASGARD⚓
Je dois être membre de g_admin
ou du groupe producteur[1] du schéma à supprimer.
Dans la table de gestion[2], je commence par modifier le bloc[5] du schéma : j’indique « d » pour mettre le schéma à la corbeille.
12UPDATE z_asgard.gestion_schema_usr
3SET bloc = 'd'
4WHERE nom_schema = '%nom_schema' ;
Dans un second temps, je bascule le champ
creation
surFalse
.12UPDATE z_asgard.gestion_schema_usr
3SET creation = False
4WHERE nom_schema = '%nom_schema' ;
Le schéma et tous les objets qu’il contenait sont automatiquement supprimés de la base. Les informations relatives au schéma (producteur, éditeur, lecteur, niveau d'arborescence...) subsistent pour mémoire dans la table de gestion.
Si le schéma supprimé n’appartenait pas à la nomenclature nationale[3] (
nomenclature
vautFalse
) ou que je suis membre du groupeg_admin[4]
, je peux maintenant supprimer l’enregistrement correspondant dans la table de gestion.12DELETE FROM z_asgard.gestion_schema_usr
3WHERE nom_schema = '%nom_schema' ;
Il ne reste plus aucune trace du schéma dans la base.