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
5/7/2015