Supprimer un domaine (Gestion des données)
Récapitulatif
Supprime un domaine d'un espace de travail.
Utilisation
-
Il est impossible de supprimer un domaine s'il est associé à une table ou une classe d'entités. Utilisez l'outil Supprimer un domaine d'un champ pour supprimer l'association entre une classe d'entités ou une table et un domaine.
-
Les domaines d'espace de travail peuvent également être gérés dans ArcCatalog ou la fenêtre Catalogue. Les domaines peuvent être créés et modifiés dans l'onglet Domaines de la boîte de dialogue Propriétés de la base de données.
Syntaxe
Paramètre | Explication | Type de données |
in_workspace |
Géodatabase contenant le domaine à supprimer. | Workspace |
domain_name |
Nom du domaine à supprimer. | String |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction DeleteDomain en mode immédiat.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.DeleteDomain_management("montgomery.gdb", "DistDiam")
Ce script autonome utilise la fonction DeleteDomain dans le cadre d'un workflow pour modifier un domaine.
# Name: RemoveDomainsExample.py
# Purpose: Update an attribute domain to constrain valid pipe material values
# Author: ESRI
# Import system modules
import arcpy, os
from arcpy import env
try:
# Set the workspace (to avoid having to type in the full path to the data every time)
env.workspace = "data"
# set local parameters
inFeatures = "Montgomery.gdb/Water/DistribMains"
inField = "MATERIAL"
dWorkspace = "Montgomery.gdb"
domName = "Material"
codedValue = "ACP: Asbestos concrete"
codeField = "TYPE"
descField = "DESRIPT"
# Process: Remove the constraint from the material field
arcpy.RemoveDomainFromField_management(inFeatures, inField)
# Edit the domain values
# Process: Remove a coded value from the domain
arcpy.DeleteCodedValueFromDomain_management(dWorkspace, domName, codedValue)
# Process: Create a table from the domain to edit it with ArcMap editing tools
arcpy.DomainToTable_management(dWorkspace, domname, dWorkspace + os.sep + domname , codeField, descField)
# Process: Delete the domain
arcpy.DeleteDomain_management(dWorkspace, domName)
# Edit the domain table outside of geoprocessing
# and then bring the domain back in with the TableToDomain process
except Exception, e:
# If an error occurred, print line number and error message
import traceback, sys
tb = sys.exc_info()[2]
print "Line %i" % tb.tb_lineno
print e.message