斯潘8
斯潘4
简介:甲骨文入门γ上一节:查看和检查Oracle数据γ下一节:转换为Oracle:Create,删除或截断表
注:以上视频已使用FME 2016.1拍摄。
当从空间数据库中读取数据时,存在许多用于提供控制的FME参数。参数可用于控制读卡器(数据库)。功能类型(表),提高数据库读取性能。
在大多数情况下,并非所有功能都需要从数据库中读取,性能在很大程度上取决于正在读取的特性的数量。读取的功能越少,读得越快,使用的系统资源更少,最终的翻译速度会更快。FME有许多参数可用于提高数据库读取性能,包括WHERE子句,搜索信封,一次读一行。
注:在第一次通过参数对话框放置读卡器对象时,可以设置这些参数中的每一个。或者在之后通过导航窗格与参数交互的任何点上。
此外,FME还包括一个可用于提高数据库性能的变压器:
对于这个演示,我们将使用一个带有Oracle空间对象阅读器的WHERE子句从Parks数据集中选择一个感兴趣的邻居。并通过限制从数据库中读取的公园数来提高性能。
注:下载部分以mapinfo mif/mid格式提供了公园的相关数据。本练习假设在开始步骤1之前,将parks数据加载到Oracle数据库中。
(1)添加Oracle空间对象阅读器
启动FME工作台。从“开始”页中选择“新建工作区”选项。
从读卡器菜单,选择添加读卡器。选择“Oracle空间对象”作为格式。对于数据集,选择“添加数据库连接”,并连接到Oracle数据库实例。如果需要有关连接到Oracle的其他详细信息,请参阅查看和检查Oracle数据一文。
对于我们的示例,我们将使用Parks数据集。如果您正在跟踪FME示例数据集,请选择“参数…”,从表格中选择“公园”
(2)设置WHERE子句
也可以从读卡器参数中设置WHERE子句。设置“WHERE子句”:
“neighhoodName”=“美景”
在标准SQL中,双引号表示属性/字段名(neighhoodName)。而单引号表示属性/字符串值(fairview)。
(3)添加文件geodatabase writer
从“编剧”菜单,选择添加编写器。选择esri geodatabase(file geodb open api)作为格式,浏览到一个位置并设置数据集的名称。打开编写器的功能参数。在“常规”选项卡下,将表名更改为“parks”,几何更改为“geodb_polygon”。连接读写器。
(4)运行工作区
运行工作区并在FME数据检查器中查看结果。通过使用WHERE子句,我们将从Oracle数据库中读取的公园限制为出现在Fairview邻居中的5个公园。
串联参数是由常量字符串构建的参数。(
(1)添加已发布的参数
右键单击导航器窗口中的“用户参数”,然后选择“创建用户参数”。提示时,选择“text”类型的参数。将名称设置为“neighhoodname”,并将提示设置为“neighhoodname:”。如果需要,可以设置默认值(例如,单引号的“市区”)。单击“确定”保存已发布的参数。
(2)将WHERE子句转换为已发布的参数
在导航窗格中,展开Oracle空间读卡器功能类型参数,右键单击“Where子句:”选择“创建用户参数”。取消选中“已发布”框,这样不会提示用户,将其设置为私有参数。将值设置为:
“neighhoodName”=$(neighhoodName)
此参数引用以前发布的名为neighhoodName的参数。
(3)使用带提示运行工作区
将工作区设置为“使用提示运行”,并分别从运行菜单和编写器菜单重定向到FME数据检查器。这将提示用户输入邻居名称,然后在检查器中显示输出。选择重定向选项对于在写入写入写入程序之前显示输出很有用,尤其是在写入数据库时。
运行工作区。提示时,输入有效的邻居名称(“市中心”,“西端”,“基茨兰诺”“普莱森特山”,斯特拉斯科纳或“Fairview”)进入提供的字段。注意,单引号表示一个属性/字符串值,并且对于属性值是必需的。
?2019安全亚搏在线软件公司|合法的