Delete Domain (Data Management)


Deletes a domain from a workspace.



DeleteDomain_management (in_workspace, domain_name)
ParameterExplanationData Type

The geodatabase that contains the domain to be deleted.


The name of the domain to be deleted.


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:
# Purpose: Update an attribute domain to constrain valid pipe material values
# Author: ESRI

# Import system modules
import arcpy, os
from arcpy import env
    # 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


Related Topics

Licensing Information

ArcView: Yes
ArcEditor: Yes
ArcInfo: Yes