描述
根据指定的方向在两个复本地理数据库之间对更新进行同步。
使用方法
在连接模式下对复本进行同步时使用此工具。
可使用此工具对双向、单向和检出复本进行同步。
复本地理数据库可以是本地地理数据库,也可以是地理数据服务。
同步之后,这些变更(编辑)将反映在目标地理数据库中且对于所有用户均可见。
语法
arcpy.management.SynchronizeChanges(geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
参数 | 说明 | 数据类型 |
geodatabase_1 | 要同步的复本所在的地理数据库。地理数据库可以是本地地理数据库也可以是远程地理数据库。 | Workspace; GeoDataServer |
in_replica | 父项在一个输入地理数据库中而子项在另一个输入地理数据库中的有效复本。 | String |
geodatabase_2 | 相关复本所在的地理数据库。地理数据库可以是本地地理数据库也可以是远程地理数据库。 | Workspace; GeoDataServer |
in_direction | 指定同步变更的方向:从地理数据库 1 到地理数据库 2、从地理数据库 2 到地理数据库 1,或者双向同步变更。对于检出/检入复本或单向复本,仅可以向一个方向发送变更。如果复本为双向复本,则上述选择均可使用。
| String |
conflict_policy | 指定发生冲突时解决冲突的方式。
| String |
conflict_definition | 指定冲突的定义方式。
| String |
reconcile | 指定如果不存在任何冲突,则在数据变更发送到父复本后是否自动进行协调。此选项仅适用于检出/检入复本。
| Boolean |
派生输出
名称 | 说明 | 数据类型 |
out_geodatabase_1 | 要同步的复本所在的地理数据库。 | 工作空间;GeoDataServer |
out_geodatabase_2 | 相关复本所在的地理数据库。 | 工作空间;GeoDataServer |
代码示例
以下 Python 窗口示例演示了如何在 Python 窗口中使用 SynchronizeChanges 函数。
import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.SynchronizeChanges_management("MyData.sde", "My2wayReplica",
"MyData_child.sde", "BOTH_DIRECTIONS",
"IN_FAVOR_OF_GDB1", "BY_ATTRIBUTE")
以下演示了如何在独立 Python 脚本中使用 SynchronizeChanges 函数。
# Name: SynchronizeChanges_Example2.py
# Description: Synchronizes changes for a one way replica from the Parent to
# the child replica geodatabase. The parent is an enterprise
# geodatabase workspace, and the child is file geodatabase.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data"
# Set local variables
replica_gdb1 = "MyData.sde"
replica_gdb2 = "Counties_replica.gdb"
replica_name = "MyOneWayReplica"
sync_direction = "FROM_GEODATABASE1_TO_2"
conflict_policy = "" # Not applicable for one way replicas, there is not conflict detection.
conflict_detection = "" # Not applicable for one way replicas, there is not conflict detection.
reconcile = "" # Only applicable for Checkout replicas
# Execute SynchronizeChanges
arcpy.SynchronizeChanges_management(replica_gdb1, replica_name, replica_gdb2,
sync_direction, conflict_policy,
conflict_detection, reconcile)
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是