从服务器创建复本 (数据管理)

摘要

使用在 ArcGIS Server 上发布的地理数据服务从远程地理数据库中利用指定列表中的要素类、图层、要素数据集和/或表创建复本。

用法

语法

CreateReplicaFromServer_management (in_geodataservice, datasets, in_type, out_geodatabase, out_name, {access_type}, {initial_data_sender}, {expand_feature_classes_and_tables}, {reuse_schema}, {get_related_data}, {geometry_features}, {archiving})
参数说明数据类型
in_geodataservice

表示用于创建复本的地理数据库的地理数据服务。地理数据服务所引用的地理数据库必须是 ArcSDE 地理数据库。

GeoDataServer
datasets
dataset_name

地理数据服务中要复制的要素数据集、独立要素类、表和独立属性关系类的列表。

String
in_type

要创建复本的类型。

  • TWO_WAY_REPLICA 变更可以于子复本和父复本之间在两个方向进行发送。
  • ONE_WAY_REPLICA变更只能从父复本发送到子复本。
  • CHECK_OUT一次复制、编辑并检回数据。
  • ONE_WAY_CHILD_TO_PARENT_REPLICA变更只能从子复本发送到父复本。
String
out_geodatabase

将存储子复本的本地地理数据库或地理数据服务。地理数据服务用于表示远程地理数据库。地理数据集可以是 ArcSDE、文件或个人地理数据库。对于双向复本,子数据库必须是 ArcSDE 地理数据库。对于单向复本和检出复本,数据库可以是个人、文件或者 ArcSDE 地理数据库。运行此工具前,必须已存在个人或文件地理数据库。

Workspace ; GeoDataServer
out_name

用于标识复本的名称。

String
access_type
(可选)

所需访问类型:

  • FULL支持复杂类型(拓扑和几何网络)并要求对数据进行版本化。
  • SIMPLE子复本上的数据不可版本化且必须为简单形式。将允许复本互相操作。
String
initial_data_sender
(可选)

供复制时使用,以确定在断开模式下哪个复本可发送更改信息。如果在连接模式下工作,此参数无关紧要。这样可确保首先从初始数据发送方接收到变更后,关系复本才发送更新。

  • CHILD_DATA_SENDER
  • PARENT_DATA_SENDER
String
expand_feature_classes_and_tables
(可选)

指定是否要包含扩展要素类和表,例如:几何网络、拓扑或关系类中的扩展要素类和表。

  • USE_DEFAULTS添加与复本中的要素类和表相关的扩展要素类和表。要素类的默认设置是复制所有要素;而表的默认设置是仅复制方案。如果定义了空间过滤器,则会将其应用于要素类。
  • ADD_WITH_SCHEMA_ONLY只为扩展要素类和表添加方案。
  • ALL_ROWS为扩展要素类和表添加所有行。
  • DO_NOT_ADD不添加扩展要素类和表。
String
reuse_schema
(可选)

指示是否重新使用包含要复制数据的方案的地理数据库。这可以减少复制数据所需的时间。此选项仅适用于检出复本。

  • DO_NOT_REUSE不重新使用方案。这是默认设置。
  • REUSE重新使用方案。
String
get_related_data
(可选)

指定是否复制与复本中现有行相关的行。例如,假设复本过滤器内部存在一个要素 (f1),且该过滤器外部存在一个来自其他类的相关要素 (f2)。如果您选择获取相关数据,则要素 f2 会包含到复本中。

  • DO_NOT_GET_RELATED不复制相关行。
  • GET_RELATED复制相关数据。这是默认设置。
String
geometry_features
(可选)

用于定义要复制区域的要素。

Feature Layer
archiving
(可选)

指定是否使用存档类来追踪变更,而不是使用版本化增量表。这仅适用于单向复本。

  • ARCHIVING使用存档来追踪变更。
  • DO_NOT_ARCHIVING不使用存档来追踪变更。这是默认设置。
Boolean

代码示例

CreateReplicaFromServer 示例 1(Python 窗口)
import arcpy
from arcpy import env
env.workspace = "C:/Data/MySDEdata.sde"
arcpy.CreateReplicaFromServer_management("GIS Servers\jerome\RoadMap.GeoDataServer", "Roads", "TWO_WAY_REPLICA", env.workspace, "MajorRoads_replica", "FULL", "CHILD_DATA_SENDER", "USE_DEFAULTS", "DO_NOT_REUSE", "GET_RELATED")
CreateReplicaFromServer 示例 2(独立 Python 脚本)
# Name: CreateReplicaFromServer_Example2.py
# Description: Creates a two-way replica from a geodata service


# Import system modules
import arcpy
from arcpy import env

# Set workspace
env.workspace = "C:/Data/MySDEdata.sde"

# Set local variables
gisServer = "GIS Servers/jerome/RoadMap.GeodataServer"
in_datasets = "Roads; Streets"
replica_type = "TWO_WAY_REPLICA"
out_workspace = env.workspace
replica_name = "MajorRoads_replica"
access_type = "FULL"
initial_sender = "CHILD_DATA_SENDER"
expand = "USE_DEFAULTS"
reUse = "DO_NOT_REUSE"
related = "GET_RELATED"
replica_geometry = "LA_County"
archiving = "DO_NOT_USE_ARCHIVING"

# Execute CreateReplicaFromServer
arcpy.CreateReplicaFromServer_management(gisServer, in_datasets, replica_type, out_workspace, replica_name, access_type, initial_sender, expand, reUse, related, replica_geometry, archiving)

环境

相关主题

许可信息

ArcView: 否
ArcEditor: 是
ArcInfo: 是

7/10/2012