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