span8
span4
你好,
我使用标准的FME Smallworld reader/writer和/或SBS-plugin从Smallworld 4.3读取和写入数据。由于数据库中有大量的对象,所以很多读取操作都要花费大量的时间。
为了使这个过程更有效,我想使用“WHERE子句”—或“WHERE”—函数。例如,这个想法是,只读取属于网络“分配线”的水管。
我首先在这个网站上搜索了一些关于如何正确做这件事的信息/建议。我找到了一些信息和一些例子(例如:WHERE子句:[Electricity] cable WHERE Status = "Accepted")。我也参考了“SPATIALBIZ Plugin使用指南”。在那本指南中,我找到了一个谓词的例子(例如:“gis”。类型= ' hotel '的酒店;gis。min_road,其中road_type = 'A-Road'")。
由于不知道哪种谓词格式是正确的,我尝试了几个不同的谓词(“water_supply”)。ws_main_section,其中network = 'Distributie'"; [water_supply] ws_main_section,其中network = "Distributie"),但是没有成功。读取器继续读取数据库中的所有数据。
有人能帮帮我吗?
谢谢!
问候,
吕克
你好,
在一些帮助和一些测试下,我让它开始工作了。
是什么原因导致这种“问题”如下。
在我的大多数工作空间中,我将(通常是预先查询的)数据/对象放置在SW Explorer的“导出到FME”(标准插件)和/或FME导出(SBS插件)=>下(参见屏幕截图)。
一旦任何数据被放置在那里,应用WHERE谓词就不起作用。在这些位置上根本不放置任何数据就会得到WHERE -函数。插件在正确的数据存储中找到neccesary对象,并对它们应用WHERE谓词。
问题解决了!
感谢您的回答。
在我对整个工作区进行的WHERE测试旁边,我还测试了这种限制导出=>参见附件的方法。
这些测试似乎都不产生任何影响。Smallworld的提供3个不同的网络40个水管,和所有40条水管获得真正的读者。
不太清楚下一步要做什么,希望能得到预期的结果。
所有特性类型都可以基于选择谓词导出,该谓词定义为一个特性参数。导出谓词需要一个SQL like语句,该语句将应用于检索集以限制导出结果。
一个非常简单的SQL语法受以下语法(见玛姬CASE_PARSER)的详细信息:
谓词 |
'(' <谓词> ')' | “不”<谓词> | <简单谓词> <仓-OP> <谓词> | < simple-predicate > |
bin-op |
”和“| ”或“ |
simple-predicate |
<字段> < op > <值> |
运 |
= | <> | > | < | >= | <= | like | |是否为空|是否不为空 |
通配符字符串 |
% -未知字符的任意数目 |
例子:
name= ' Test ',路由不为空
©2019安全亚搏在线软件公司|法律