添加递增 ID 字段 (数据管理)

摘要

将向 DamengIBM Db2Microsoft Azure SQL DatabaseMicrosoft SQL ServerOraclePostgreSQL 数据库中的现有表或要素类中添加由数据库维护的 ID 字段。计划通过要素服务编辑的所有要素类或表都需要数据库维护的 ID 字段。

使用情况

  • 您无法针对注册到地理数据库的表或要素类运行此工具。

  • 要向某个表或要素类中添加 ID 字段,您必须是该表或要素类的所有者。

  • 如果未指定字段名,将默认使用 ObjectID。如果已存在名为 ObjectID 的字段,除非提供一个不同的名称,否则工具不会运行。

  • 如果已存在数据库维护的递增 ID 字段,则此工具将不再进行添加。

  • 添加了以下字段类型:

    DBMS数据类型

    Dameng

    具有标识属性的 int32

    Db2

    作为标识的整数

    Oracle

    数值型(如果在 Oracle 11g 中创建,则具有数据库序列和触发器;如果在 Oracle 12c 或更高版本中创建,则具有标识)

    PostgreSQL

    系列

    SQL Server

    具有标识属性的整数

参数

标注说明数据类型
输入表

将添加 ID 字段的表或要素类的位置和名称。

Table View
字段名称
(可选)

将要用于 ID 字段的名称。如果未提供输入,则将使用默认值 ObjectID

String

派生输出

标注说明数据类型
更新的输入表

要进行更新以包含一个递增 ID 字段的输入表。

arcpy.management.AddIncrementingIDField(in_table, {field_name})
名称说明数据类型
in_table

将添加 ID 字段的表或要素类的位置和名称。

Table View
field_name
(可选)

将要用于 ID 字段的名称。如果未提供输入,则将使用默认值 ObjectID

String

派生输出

名称说明数据类型
out_table

要进行更新以包含一个递增 ID 字段的输入表。

代码示例

AddIncrementingIDField 示例(Python 窗口)

从 Python 窗口运行时,将 ID 字段 FSID 添加到用户 insp 拥有的名为 violations 的表中。

import arcpy
arcpy.AddIncrementingIDField_management("C:/Data/DatabaseConnections/mydb.sde/insp.violations", "FSID")

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 否
  • Standard: 是
  • Advanced: 是

相关主题