摘要
从工作空间删除属性域。
用法
如果属性域与要素类或表相关联,则无法将其删除。使用移除字段的属性域工具可移除要素类(或表)与属性域之间的关联。
还可以在 ArcCatalog 或目录窗口中管理工作空间属性域。可通过数据库属性对话框中的属性域选项卡创建和修改属性域。
语法
DeleteDomain_management (in_workspace, domain_name)
参数 | 说明 | 数据类型 |
in_workspace | 包含要删除的属性域的地理数据库。 | Workspace |
domain_name | 要删除的属性域的名称。 | String |
代码实例
删除属性域示例(Python 窗口)
以下 Python 窗口脚本演示了如何在即时模式下使用 DeleteDomain 函数。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.DeleteDomain_management("montgomery.gdb", "DistDiam")
删除属性域示例 2(独立脚本)
该独立脚本将 DeleteDomain 函数用作编辑属性域的工作流的一部分。
# Name: RemoveDomainsExample.py
# Purpose: Update an attribute domain to constrain valid pipe material values
# Import system modules
import arcpy
import os
try:
# 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, 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 as err:
print(err.args[0])