斯潘8
斯潘4
数据库-transformers-advanced.fmwt
FME包含许多专门设计用于数据库的工作台变压器。这些位于Transformer Galle亚搏在线ry中的“工作流”类别下。这种转换器通常用于查询数据库,但也可用于分派更新和插入,或与数据库中的数据执行空间关系。
为了我们的目的,地理数据库就是这样一个数据库的例子。
为什么要用变压器?
变形金刚有时比使用编写器进行更新更可取,因为您可能希望只对数据的一小部分应用更改,或者您可能希望使用在选择编写器的更新模式时不可用的特殊WHERE子句。然而,除非您出于特定原因需要这些功能,你应该用一个作家来代替。
阿克斯德维尔
Arcsdequerier是向Arcsde数据库发出命令的转换器。此转换器可以发出更新和删除命令,但是,如前所述,最好尽可能使用SDE编写器。在查询模式下,可以使用一整套空间交互。
特技演员
FeatureReader Transformer可用于读取任何支持FME的数据格式。这个转换器的第一个用途是简单地读取数据集,就像一个读者。变压器由传入功能启动,以读取现有数据集。然后,它将数据集的内容作为特性返回。换言之,它实际上是在做一个工作台阅读器的工作,但在工作区的转换阶段。启动器功能可以来自读卡器,或者来自创造者变压器。
该转换器的第二个作用是对正在读取的数据执行空间和非空间查询。这样,任何格式的数据都可以视为数据库。例如,如果启动器功能是多边形,可以使FeatureReader从选定的数据集中读取点特征,这些点落在进入的多边形内。
下面的示例将演示这种功能。
网格 (ESRI文件地理数据库功能类)
地址点 (ESRI文件地理数据库功能类)
在上面的图片中,我们看到了网格和地址点特性类的可视化,以及它们附带的属性。
这里的任务是读取指定城市网格广场内的所有地址。因为地址没有城市网格交叉引用,这需要一个空间,而不是非空间的,查询。
一种方法是读取整个地址数据集,然后根据选择的网格正方形过滤它。然而,如下图所示,执行这项任务的一个更有效的方法是使用一个FeatureReader变压器。
1。读取网格数据
使用esri geodatabase(文件geodb)读卡器从源要素类读取网格要素几何图形。网格特性将提供在查询地址点数据集时使用的空间约束。而不是在整个网格数据集中读取,我们将使用文件geodatabase reader上的where子句功能来选择一个特定的网格正方形作为地址点要素类的空间约束。这样的功能可以为工作流提供效率和性能。亚搏在线
将ESRI地理数据库(文件geodb)读卡器添加到工作区,然后单击参数按钮。选择网格作为要读取的表和参数对话框的WHERE子句部分,键入facettext='l13'(记住包括单引号)。
WHERE子句将查询基础文件geodatabase,并只返回与查询匹配的网格正方形。需要注意的是,在通过工作台中的导航树添加阅读器之后,可以调整where子句。
2。读取地址点
使用FeatureReader Transformer从源要素类读取地址要素几何图形。步骤1中选择的网格正方形将作为FeatureReader的初始特征和空间查询。
将FeatureReader变压器添加到工作区,并将网格方阅读器连接到FeatureReader的发起程序端口。打开FeatureReader参数对话框。对话框的读卡器部分要求查询数据的位置。这是地址点数据的位置。
下一步,在功能类型下阅读对话部分,单击“…”按钮并选择地址点要素类。在这种情况下,WHERE子句可以留空(我们已经选择了地址点)。我们确实需要选择一个空间交互。
从“空间过滤器”下拉菜单中选择“包含”。完成时,FeatureReader参数对话框应如下所示:
三。可视化结果
将Inspector Transformer连接到功能读取器上的AddressPoints输出端口。运行工作区。与所选网格方块对应的地址块应显示在数据检查器中。覆盖原始网格数据以证明查询工作正常。
先进任务
数据集中的某些地址有一个状态字段,该字段的值为“retired”–指示不再有效的地址。您可以在数据检查器表视图中看到:
使用FeatureReader WHERE子句筛选出具有此状态的地址。
记录所选网格正方形的特征计数,包括和不包括WHERE子句。这将有助于确认查询是否正常运行。例如,方块L13总共应该有307个地址,或者排除失效地址时应该有278个。
?2019安全亚搏在线软件公司|合法的