span8
span4
在这个例子中,SQLExecutortransformer将用于连接来自数据库表的记录,这些记录与来自GML文件的源特性相关。我们有一个GML格式的火场数据集和一个名为PostalAddress的数据库表。两个数据集都有一个公共地址字段。
FME将用于在Fire hall中读取数据,然后使用SQLExecutor根据公共地址字段进行数据库连接,从而在PostalAddress表中选择匹配的记录。
注:虽然本例的重点是PostGIS的格式,它也适用于其他关系数据库格式,如Oracle和SQL Server。
下载sqlexecutor -连接- 201。fmwt是完整的工作空间。如果您想自己创建工作空间,请下载sourcegmldata。zip,然后按照下面的步骤创建它。
已完成的工作空间
1。检查源数据
FireHalls GML
添加一个GML读取器并将其设置为读取FireHalls.gml。使用数据检查器检查防火墙。gml。使用“表视图”窗口查看文本记录。请注意,每个消防大厅设施都有一个地址字段。此字段将用于与PostalAddress表匹配地址后的字段。
FireHall.gml与数据检查观察
邮寄地址表
在Data Inspector中使用foll检查源PostalAddress表
将数据集设置为后设置参数嵌入连接参数:
主持人:postgis.train.亚搏在线safe.com
端口:5432
数据库:fmedata
用户名:fmedata
密码:fmedata
将表列表的模式设置为fmedata2015,然后选择PostalAddress表。
的邮寄地址该字段将用于匹配的消防大厅的GML的地址字段。
的PostalAddress表数据检查观察
2。建立SQLExecutor
SQLExecutor将用于匹配数据库中每个GML Fire Hall设施的PostalAddress表中的地址记录。
以下SQL语句将GML记录加入数据库记录:
从fmedata2015中选择*。"PostalAddress" where "PostalAddress" ='@Value(Address)'
使用SQL编辑器工具最容易创建SQL语句。一定要包括引号字符围绕最后的@Value()部分!
如果需要,可以使用Atributes来公开参数,使SQL join添加的任何属性在workbench中可见。
3。复制属性值
可以使用AttributeManager转换器复制或重命名属性。例如,重命名名称属性从Fire Halls GML特性到OwnerName。
4。检查输出在数据检查
SQLExecutor产生数据检查器。
所述SQLExecutor的结果在数据检查JOIN观察
5。编辑SQL语句
SQLExecutor已经将来自SQL SELECT语句的数据合并到Firehall特性中。您还可以使用SQL语句进行SQL连接。
Firehall数据缺少CivicNo属性。这在AddressPoints表中。使用AddressID加入了CivicNo属性到Filehall记录。你既可以使用第二SQLExecutor,或使用SQL连接。就像是:
选择一个。*,B。 “CivicNo” FROM fmedata2015。 “的PostalAddress” 一 “fmedata2015”。 “AddressPoints” B其中 “A”。 “的PostalAddress”= '@Value(地址)' 和A “AddressId”= b的“AddressId”;
只要有可能“让数据库做的工作”!做尽可能多,你可以在一个单一的SQL调用。
©2019安全亚搏在线软件公司法律