FME中的空间数据库转换器

原文发布时间:2014-03-12

作者:一峰

之前几篇文章介绍了空间数据库的读/写以及数据库更新,本文继续介绍数据库操作的转换器。

FME提供了一系列关于数据库操作的转换器,为我们对数据库查询操作带来了方便,在转换器库分类中可以找到Database:其中提供了7个转换器,这里不一一介绍,重点介绍:FeatureReader

    

 FeatureReader是用于数据库查询的转换器,支持FME所支持的所有数据库类型,包括oracle spatialSDEsqlserverexcelaccess等等,而ArcSDEQuerier只支持SDESQLExecutor不支持SDE,因此我认为FeatureReader是比较全能的数据库查询的转换器。

    FeatureReader默认有一个输入端和两个输出端,如图:


 输入端“INITIATOR”:作为查询的发起者,每个输入要素都要触发FeatureReader执行一次数据库查询;

输出端“<OTHER>”:输出查询结果

输出端“INITIATOR”:输出发起者所有要素。

那么FeatureReader如何进行设置,下面详细介绍

FeatureReader的设置步骤分为4

第一步:设置连接参数,选择表。连接方式详见:

https://blog.csdn.net/fmechina/article/details/80872539


 第二步:设置查询表和查询条件。如果选择1,则查询表为第一步中选择的表,如果选择2,则查询表为指定的属性值;然后设置查询条件


 第三步:设置空间关系查询,选择1:表示没有空间查询;选择2:表示查询与发起要素的外接矩形相交的要素;选择3:表示查询与发起要素有如下空间关系的要素:ITIERSECT(相交)CONTAINS(包含)CROSSES(穿越)DISJOINT(相离)EQUALS(相等)OVERLAS(重叠)TOUCHES(相接)WITHIN(被包含)

        

 第四步:高级设置,

(1)  Attribute Handling:设置查询结果的属性是否与发起要素的属性合并;如果合并,当查询结果的属性和发起要素的属性名称存在相同时保留谁的属性。

(2) Geometry Handling:查询结果的几何图形是否合并;如果合并,是输出查询结果和发起要素的聚合体呢还是只输出发起要素的图形。

(3) 缓存设置:由于每个发起要素都要触发此转换器查询数据库,因此,如果设置缓存,会提高读取数据库的效率。

            

点击Finish完成设置。

总结:我们可以通过此转换器依据外部传来要素的逻辑关系或者空间关系查询数据库中我们所需要的数据。



    




猜你喜欢

转载自blog.csdn.net/fmechina/article/details/80884133