span8
span4
以前:查看和检查的PostGIS|下一个:转换为PostGIS的:创建,删除或截断表
与FME,连接到数据库是从选择文件用于文件/基于文件夹的格式略有不同。各种参数FME存在读取空间数据库时提供控制。这些参数可以控制读取器(数据库)和特征类型(表),以改进数据库读取的性能。在每个表的每个功能,从数据库中读取时通常不要求。正在从数据库中读取的功能较少,更快的读取会有的,更少的系统资源的使用,以及更快的整体平移会。要了解更多有关如何提高数据库的读取性能,请参阅文章让数据库做的工作:阅读。
在这篇文章中,其中利用子句只读感兴趣附近的特色园区。WHERE子句是一个具体的查询,仅允许通过查询功能,返回到FME。这种采用数据库查询工具(SQL,特别),这反过来又化妆使用的数据库索引,并且是很多比读取整个表,然后用测试仪变压器将其过滤效率更高。
使用FME 2016.1这段视频被记录的数据是从当前的文章不同,但其概念仍然是相同的。
ConvertingFromPostGIS.zip(包含工作空间和输出数据)
1.添加PostGIS的读者
启动FME Workbench和打开新的工作空间。
从读者菜单中,选择添加读卡器。选择PostGIS的对于格式。对于连接,请在创建PostGIS的培训连接查看和检查的PostGIS。如果你没有这个指定的数据库连接,可点击下拉菜单并选择再添加数据库连接输入以下连接参数:
名称:PostGIS的培训
港口:5432
数据库:fmedata
用户名:fmedata
密码:fmedata
接下来,点击参数按钮,并为表列表中,单击省略号按钮,然后选择公园。我们可以设置我们的WHERE子句中的读者参数,但是我们要首先检查我们的数据。WHERE子句可以在以后添加。单击确定两次。
2.检查数据
现在,我们已经成功地访问数据库,并增加了公园的数据集,我们可以检查数据。点击阅读器功能类型来打开弹出菜单,然后选择查看源数据开辟视觉预览。
在2018.1和旧版本FME的,点击检查按钮,打开FME数据检查。
在这里,我们有一个包含所有在温哥华,不列颠哥伦比亚省公园的一个数据集,但我们只是在公园一个叫做西尾邻域内感兴趣。我们将使用WHERE子句这些过滤掉。
3.设置WHERE子句
要设置WHERE子句读者已经加入之后,我们需要使用导航器窗口。转到Navigator窗口,并展开了PostGIS培训读卡器,然后展开参数。在WHERE子句打开参数窗口中双击。
在编辑PostGIS的训练[POSTGIS]对话框中,单击省略号旁边的WHERE子句打开文本编辑器。
在文本编辑器中添加以下,以单与双引号的音符。单击确定两次以添加WHERE子句。
“NeighborhoodName” =“西区”
在左侧,NeighborhoodName表示属性名称,并在右边,西区表示的属性值。在标准SQL中,双引号表示属性/字段名,而单引号表示属性/字符串值。
4.添加文件地理作家
现在我们需要写出来的数据。从作家菜单中选择Add作家。选择ESRI地理数据库(文件地理数据库开放API)对于格式。对于数据集点击打开文件夹浏览器按钮并.GDB文件输入一个名称(WestEndParks.gdb)和地点(你喜欢的地方)。要素类或表定义设置为自动,然后单击确定。
将出现特征类型对话框中,设置要素类或表名称WestEndParks。然后设置几何体,以geodb_polygon,然后单击确定。
一旦作家功能类型添加到画布上,连接public.parks读卡器功能型到WestEndParks作家特征类型。
5.运行工作区
保存,然后运行该工作区。要查看数据,点击作家特征类型来打开弹出菜单,然后点击查看写入的数据。在2018.1或旧版本FME的点击按钮,检查在弹出菜单中打开FME数据检查。
从源数据集中保存的属性,文件地理数据库作家在伦敦西区邻里WestEndParks.gdb只写the16公园。
与WHERE子句参数的问题,与同类参数,就在于它是很难得到用户的输入,并将其应用到条款。简单地发布所述参数不是有用的,因为用户必须输入完整的条款(<字段> = <值>)中,当经常仅<值>部是必需的作为输入。这是一个级联参数用武之地它是建立在一个恒定字符串(<字段>部分)和用户定义的值(<值>部)的参数。
1.添加参数发布
在开始之前,请确保您已经完成了前面的步骤,直到第4步:在Navigator窗口中,右键点击用户参数,选择创建用户参数。
在添加/编辑用户参数对话框中填写下列参数:
类型:文本
名称:NeighborhoodName
提示:NeighborhoodName:
默认值:'西端'
发布时间:经过
可选的:经过
确保周围有“伦敦西区”单引号,然后单击确定。
2.转换WHERE子句一个秘密参数
现在,我们已经公布的参数,我们可以更新的WHERE子句。在Navigator窗口中,右键单击PostGIS的阅读器功能类型的WHERE子句参数和选择创建用户参数。
取消选中发布中,所以不会提示用户在运行工作区时设置此参数,这就是所谓的秘密参数。然后将该值设置为:
“NeighborhoodName” = $(NeighborhoodName)
该公开的参数使得先前创建的,由$(NeighborhoodName)所示的参照。单击确定以添加新的秘密参数。
3.运行工作区使用提示用户参数
运行工作区之前,单击运行下拉,使提示用户参数。在旧版本的FME的这种被称为具有提示符下运行。此选项将在运行时提示用户选择一个社区。
现在运行工作区和提示时,输入一个有效的NeighborhoodName(从“市中心”选择“锦绣”,“基斯兰奴”,“贝拉”,“士达科纳”或“伦敦西区”)进入该领域提供。需要注意的是单引号表示的属性/字符串值和所需的属性值。
由于地理数据库设置为插入新的内容,这将在新的社区添加到现有的西区。
数据归属
这里使用源自从公开数据中的数据由提供温哥华市, 不列颠哥伦比亚省。它包含了开放政府许可协议进行许可信息 - 温哥华。请注意,并非所有的训练PostGIS的数据库是从温哥华市的,因为它是一个公共数据库,任何人都可以上传数据的数据。
©2020安全亚搏在线软件公司|法律