西班牙
斯潘4
编写multiplegeometry-sqlserver-2016.fmwt
有两种多重几何书写方案:
读写多重几何图形
在一个多个->多个翻译fme自动处理读写操作。
读单个和写多个几何图形
将单个几何图形转换为多个几何图形时,关键在于如何识别两个相关的特征,以及如何将每个特征指定给相应的几何图形列。
因为FME还不能处理单个->多个在Workbench中自动转换,必须手动定义要写入的每个数据库记录的设置。它将由两个或多个特征组成,每个特征为最终记录贡献其几何图形。
用于执行此操作的功能包括几何图形名称和聚合。
1)几何名称应用于每个特征测地仪这个几何名称标识要写入的几何列。
2)这些特征作为一个集合被组合在一起,通常聚合器transformer,它标识构成特定数据库记录的功能。
创建多个几何图形表
FME尚无法创建具有多个几何列的表。您可以使用具有多个几何列的现有表,也可以使用FME翻译中的SQL脚本创建一个。
sql脚本的目标是:
示例脚本Oracle_SQL.txt与Oracle一起使用。
笔记:
剧本分为四个部分:
第二个示例脚本Oracle_SimpleSQL.txt也是附加的。
对于使用sqlserver数据库,示例脚本sqlserver_simplesql.txt也是附加的。
笔记:
这里的区别在于,使用特定的fme设备来忽略脚本中的错误,而不是陷阱错误。注意drop和delete命令前面的连字符。这提示FME忽略这些命令中的任何错误,例如当试图删除不存在的表时会发生错误。
赞成的意见较短、较简单的脚本
欺骗非标准SQL
提交是自动执行的,不需要包括
这些脚本都可以在writer advanced parameter>sql语句中使用,以便在转换之前执行。这样可以确保在运行工作区之前正确构建表。那就很重要了不是在处理要素类型参数的表中指定“删除并创建”。
用于写入多个几何图形列的附加工作区执行以下步骤:
-创建Oracle表。FME无法创建多个几何表格
-确保数据库编写器的参数“handlemultiplespacecolumns”=是
1-为每组要素设置几何图形列的名称
2-将特征转化为聚合
3-标记集合,使其设置在每个部分独立于其他部分且其自身完整几何体的位置。
4-写入表-截断表而不设置geom列名
SQL服务器
如果使用SQL Server,则可能有两个具有不同几何类型的几何列。例如一列使用几何模型,一列使用地理模型。在sql server示例工作区中,已经创建了表,以便将多边形存储为地理数据。我们添加了一个重投影程序,将多边形特征重投影到一个纬度/经度坐标系中,然后它们将被正确写入。
可以更新具有多个空间列的表。首先,下面是处理多个空间列时更新的工作原理。有三种更新方案。
一。更新两个空间列
2更新两个空间列,但将其中一个设置为
三。只更新其中一个空间列,另一个保持不变。
上面讨论了用于编写多个空间列的预队列。
向具有多个几何图形的多个空间列表(fme_db_operation=update)写入更新时,可以预期以下行为:
假设我们将空间列命名为g1和g2
一。更新两个几何图形:g1和g1
创建聚合。使用multiplegeometrysetter将聚合标记为多重几何体。g1和g2作为一个集合出现在功能上。g1和g2都已更新
2.更新两个几何图形并将g2设置为
三。更新g1,不要更新g2。创建一个G1和多重电泳仪的集合。功能中缺少G2。g1已更新,g2应保持不变。
?2019安全亚搏在线软件公司|合法的