Delete Domain (Data Management)
Summary
Deletes a domain from a workspace.
Usage
-
A domain cannot be deleted if it is associated with a feature class or table. Use the Remove Domain From Field tool to remove the association between a feature class or table and a domain.
-
Workspace domains can also be managed in ArcCatalog or the Catalog window. Domains can be created and modified through the Domains tab on the Database Properties dialog box.
Syntax
DeleteDomain_management (in_workspace, domain_name)
Parameter | Explanation | Data Type |
in_workspace |
The geodatabase that contains the domain to be deleted. | Workspace |
domain_name |
The name of the domain to be deleted. | String |
Code Sample
Delete Domain Example (Python Window)
The following Python window script demonstrates how to use the DeleteDomain function in immediate mode.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.DeleteDomain_management("montgomery.gdb", "DistDiam")
Delete Domain Example 2 (Stand-alone Script)
This stand-alone script uses the DeleteDomain function as part of a workflow to edit a domain.
# 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
Environments
Related Topics
Licensing Information
ArcGIS for Desktop Basic: Yes
ArcGIS for Desktop Standard: Yes
ArcGIS for Desktop Advanced: Yes
11/18/2013