在 Standard 或 Advanced 许可等级下可用。
可以通过 ArcGIS for Desktop 复制数据库中的数据,并将其粘贴到另一个数据库或地理数据库中。
将数据从一个数据库类型移动到另一个数据库类型时,可能会改变表中属性所用的数据类型。例如,如果从 SQL Server 复制包含 UniqueIdentifier 字段的表,当将其粘贴到 PostgreSQL 数据库时,将变为 Varchar 字段。
请注意,ArcGIS 无法粘贴其不支持的数据类型或定义。这意味着在目标数据库中创建的表或要素类 将包含以下内容:
- ArcGIS 支持的数据类型
任何无法映射到 ArcGIS 数据类型的列都不会在目标数据库的要素类中创建。
- 一个空间列
对于要素类,ArcGIS 将复制遇到的第一个空间列;不会在目标要素类中创建第二个空间列。如果要使用第二个空间列,则需要在只包含第二个空间列的源表上创建视图或查询图层。如果要创建视图,可从源数据库中复制该视图,然后将其作为要素类粘贴到目标数据库中。如果要定义查询图层,可将数据从查询图层导出到目标数据库的新要素类中。
- 一种几何类型
ArcGIS 将读取源要素类中第一个要素的几何类型(点、线、面或多点)。只有与第一行的几何类型相符的要素才会粘贴到目标数据库的要素类中。如果源要素类包含多个几何类型,且您想要控制目标要素类中使用的几何类型,请创建源要素类的查询图层并定义查询图层的几何类型。接下来,将数据从查询图层导出到目标数据库中的要素类。在目标数据库中创建的要素类将仅包含与针对查询图层定义的几何类型相匹配的要素。
- 一个坐标设置
ArcGIS 将读取源要素类中随第一个要素所存储的空间坐标属性(xy、xyz、xym、xyzm)。粘贴到目标数据库的要素类中的要素都具有坐标属性。例如,如果将查询图层定义为具有 x,y 和 z 坐标而没有 m 坐标,则源要素类中具有 m 坐标信息的所有要素在目标要素类中将不会具有 m 坐标。同样,源要素类中仅有 x,y 坐标的任何要素在目标要素类中将具有 x,y 和 z 坐标(z 坐标被设置为 0)。
要确保所有坐标信息都保留在目标要素类中,请创建源要素类的查询图层并定义其空间属性以包含 m 和 z 值。接下来,将数据从查询图层导出到目标数据库中的要素类。在目标数据库中创建的要素类中的所有要素都将使用您为查询图层定义的空间坐标设置。
- 一个空间参考
如果源要素类具有 ArcGIS 可识别的已定义空间参考,则目标数据库中的要素类将使用相同的空间参考。如果没有为要素类定义空间参考,则 ArcGIS 将使用位于表中第一行的空间参考。将不会在目标数据库的要素类中创建与该空间参考不匹配的记录。然而,如果无法识别表或第一行的空间参考(例如,当使用自定义空间参考时),则目标要素类中使用的空间参考将取决于您的数据库管理系统。有关详细信息,请参阅空间参考。
以下步骤说明了如何在数据库之间或在地理数据库和数据库之间通过复制和粘贴移动表、要素类或视图。
- 启动 ArcMap 并打开目录窗口。
- 从目录树建立与源数据库和目标数据库的连接。
确保连接到源数据库的用户具有访问源数据库中数据的权限,并且连接到目标数据库的用户具有足够的权限来创建表。
- 如有必要,准备好要移动的数据。
- 右键单击源数据库中的表、要素类或视图,然后单击复制。
- 右键单击目录树中的目标数据库,然后单击粘贴。
目标数据库中数据的所有者是您连接数据库时使用的登录帐户。
- 如果移动了要素类,则将随即出现数据传输对话框,以便选择目标数据库中空间列使用的数据类型。单击配置关键字列,从下拉列表中选择空间类型,然后单击确定。
新的表或要素类即在目标数据库中创建。