如何加载数据与附件从一个功能类到另一个

3383
3.
2017-05-30 05:38
kendiekenmoe
通过
新贡献者II

我使用的是ArcGIS Desktop 10.5和PostgreSQL 9.5。

我已经创建了企业GDB和我所有的功能类都有附件。我有一些功能类,其中有超过1000行和许多多边形有两个附件。我想加载数据与附件到另一个功能类自动。这可能吗?如果是,怎么做?

//www.gobook3.com/groups/geodatabase?sr=search&searchid=e9ab92b0 f351 - 45 - ee - b5b4 - 62 d2cb03979..。//www.gobook3.com/community/gis/managing data?sr=search&searchid=8e526dc5 - 7677 4 - f44 9 d0..——等于off。

标签(3)
0荣誉
3回复
George_Thompson
Esri频繁贡献者
0荣誉
JayantaPoddar
通过 MVP尊敬贡献者
MVP尊敬贡献者

你试过吗?附加功能,包括维护附件在环境设置中启用?



认为位置
ValerieHanson
通过
新贡献者III

我有一个承包商帮助我将附件文件从SQL中的旧标准化fc (SDSFIE)移动到保存相同数据但具有不同字段名称的新标准化fc。许多功能都有多个附件,主要是照片。在屏幕分享环节,她领着我走的时候,我的头都晕了。啊!是连接过程让我感到奇怪。希望它会帮助你!

警告:在执行这些步骤之前,请确保您有旧的和新的地理数据库的备份!

下面提供的步骤适用于建筑物,但同样的步骤可以应用于任何其他带有附件的功能类。

buildingorigin:指旧SDSFIE模式中的Building特征类

buildingNewSchema:指新的SDSFIE模式中的Building特性类

步骤:

  1. 在buildingoriginal附件表中添加OBJECTIDNEW字段(long int)。
  2. 在buildingorigin和buildingNewSchema特征类之间进行空间连接——输出到一个包含新旧OBJECTID的新特征类。
  3. 您可能必须删除并重新添加空间连接特性类—在我这样做之前,我对字段名称有一个奇怪的问题。
  4. 这两幢大楼之间有连接处吗附件表和空间连接特性类:
      • 附件表连接字段:REL_OBJECTID
      • 空间连接特性类连接字段:OBJECTID
  • 只保留匹配的记录

  1. 对OBJECTIDNEW字段进行计算-> OBJECTIDNEW = joinFC。OBJECTID_1
  2. 删除加入
  3. 添加IGNORE字段(短int)到buildingorigin附件table -该字段用于指示哪些建筑物在新表中已经有附件。
  4. 对所有记录的IGNORE字段进行计算到0(必须这样做,因为在加载数据期间查询获取所有不等于1或等于null的行不起作用)。
  5. 这两幢大楼之间有连接处吗附件表和buildingNewSchema附件表:
      • buildingoriginal附件表连接字段:OBJECTIDNEW
      • buildingNewSchema附件表连接字段:REL_OBJECTID
  • 只保留匹配的记录

  1. 对IGNORE字段进行计算-> IGNORE = 1
  2. 删除加入
  3. 在buildingNewSchema上加载数据附件表格
    1. 要加载的源数据:buildingorigin附件表格
    2. 目标和匹配字段
      • REL_OBJECTID = OBJECTIDNEW
      • CONTENT_TYPE = CONTENT_TYPE
      • ATT_NAME = ATT_NAME
      • DATA_SIZE = DATA_SIZE
      • =数据
    1. 只加载满足查询的行:IGNORE = 0

下面的步骤将更改附件关系,以使用globalid而不是ObjectIds。这将使将来移动附件更容易。

  1. 将GlobalId添加到buildingNewSchema
  2. 将GlobalId添加到buildingNewSchema附件表中(如果还没有自动添加的话)
  3. 运行迁移关系类工具