斯潘8
斯潘4
与FME,从数据库读取与从基于文件的数据集读取相当。在读取空间数据库时,存在各种FME参数以提供控制。这些参数可以控制读卡器(数据库)和功能类型(表)。提高数据库读取性能。从数据库读取时,通常并非每个表中的每个功能都是必需的,从数据库中读取的功能越少,读得越快,使用的系统资源越少,整体翻译速度越快。以下内容可以提高数据库读取性能:
在这个演示中,Where子句仅用于读取感兴趣的附近的公园特征。
注意:这个例子也适用于PostgreSQL格式。
存储在Postgis中的公园数据,使用数据检查器查看
在数据检查器中存储数据
1。添加PostGIS阅读器
启动FME工作台。从“开始”页中选择“新建工作区”选项。
从读卡器菜单,选择添加读卡器。选择Postgis作为格式。对于数据集,选择PostGIS培训数据库连接创建于查看和检查PostGIS.如果没有此命名数据库连接,选择嵌入连接参数的选项,然后选择参数。。。手动输入连接参数:
为PostGIS编写器嵌入连接参数
在读卡器参数中,对于表列表的架构选择fmedata2015并在表表选择Parks。
PostGIS阅读器参数
2。设置WHERE子句
使用WHERE子句参数:
在PostGIS阅读器功能类型或工作区画布下的导航器中,打开fmedata2015.parks功能类型参数,转到“格式参数”选项卡,并设置WHERE子句:
“NeighhoodName”=“西区”
在左边,neighborhoodname表示属性名,在右边,西端表示属性值。在标准SQL中,双引号表示属性/字段名,单引号表示属性/字符串值。
在导航器中设置WHERE子句
在功能类型属性中设置WHERE子句
三。添加文件地理数据库编写器
从“编剧”菜单,选择添加编写器。选择esri geodatabase(文件geodb open api)作为格式。对于数据集,单击打开文件夹浏览器按钮和.gdb文件的名称(westendparks.gdb)和位置。
连接源和目标功能类型。
4。运行工作区
保留源数据集中的属性,文件geodatabase writer将西区的16个公园写入west end parks.gdb。
在数据检查器中查看的WestendParks
WHERE子句参数有问题,与类似参数一样,很难获得用户输入并将其应用到子句中。仅仅发布参数是不有用的,因为用户必须输入完整的子句(
1。添加已发布参数
右键单击导航器窗口中的“用户参数”,然后选择“添加参数”。提示时,选择文本类型的参数。将名称设置为neighhoodname,并将提示设置为neighhoodname:。如果需要,设置默认值。
添加用户定义值部分
2。将WHERE子句转换为已发布的参数
在导航器窗口中,右键单击PostGIS阅读器功能类型Where子句参数,然后选择创建用户参数。
选择创建用户参数
取消选中“已发布”框,这样不会提示用户设置此私有参数。
打开where子句生成器,并将值设置为“neighhoodname”=$(neighhoodname)。请注意,此发布的参数如何引用以前创建的neighborhoodName。
添加字段部分
三。使用带提示运行工作区
提示时,输入有效的邻居名称(从“市区”中选择,“锦绣”“基茨兰诺”“普莱森特山”,“Strathcona”或“West end”)进入提供的字段。注意,单引号表示一个属性/字符串值,并且对于属性值是必需的。
?2019安全亚搏在线软件公司|合法的