删除域 (数据管理)

摘要

从工作空间删除属性域。

使用情况

  • 如果属性域与要素类或表相关联,则无法将其删除。使用移除字段的属性域工具可移除要素类(或表)与属性域之间的关联。

参数

标注说明数据类型
输入工作空间

包含要删除的属性域的地理数据库。

Workspace
域名称

要删除的属性域的名称。

String

派生输出

标注说明数据类型
更新的输入工作空间

已更新的输入工作空间

工作空间

arcpy.management.DeleteDomain(in_workspace, domain_name)
名称说明数据类型
in_workspace

包含要删除的属性域的地理数据库。

Workspace
domain_name

要删除的属性域的名称。

String

派生输出

名称说明数据类型
out_workspace

已更新的输入工作空间

工作空间

代码示例

DeleteDomain 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 DeleteDomain 函数。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.DeleteDomain_management("montgomery.gdb", "DistDiam")
DeleteDomain 示例 2(独立脚本)

此独立脚本将 DeleteDomain 函数用作编辑属性域的工作流的一部分。

# Name: RemoveDomainsExample.py
# Purpose: Update an attribute domain to constrain valid pipe material values
# Import system modules
import arcpy
import os
 
# Set the workspace (to avoid having to type in the full path to the data every time)
arcpy.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 standard editing tools
arcpy.DomainToTable_management(dWorkspace, domname, 
                               os.path.join(dWorkspace, 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

相关主题