你在这里: 工作台格式资源 > 功能操作

功能操作

许多作者共享一个特性操作规范,它决定是否插入传入功能,更新,或从目标表中删除。

注:功能操作取代写入模式.

功能操作是写入程序格式参数。其可能值为:

  • Insert:在要素上使用属性(如果编写器是空间的,则使用几何图形)将行附加到目标表。
  • 更新:在要素上使用属性(如果编写器是空间的,则使用几何图形)更新现有表列。必须在行选择组中指定选择方法。
  • 删除:删除现有表行。必须在行选择组中指定选择方法。
  • FME_-DB_操作:功能操作将由属性确定故障模式与后果分析在每个输入功能上。必须在行选择组中指定选择方法。价值故障模式与后果分析将按以下方式处理:
  • 如果值为空,空的,或失踪,它将被视为插入。
  • 接下来将匹配该值以插入,更新,并删除,案例不敏感。
  • 如果没有匹配,此功能将被拒绝,并在日志中显示警告。
  • 如果有比赛,将对该功能执行匹配的功能操作。

更新空间列是一个编写器格式参数,仅当某个功能的功能操作为“更新”时有效。此参数的可能值为:

  • 对:将更新用户指定的空间列。ifmenulls将被写为空值并替换现有的空间值。多几何列处理存在一些例外。
  • 不:不会更新空间列。

行选择是一个编写器格式参数组,仅当某个功能的功能操作是“更新”或“删除”时才有效。从表中更新和删除时,需要指定一个条件来选择要操作的行。此参数组提供两种方法来构造选择条件:

  • 匹配列:在相应的列选取器对话框中选择的列将用于匹配目标行。将选择所有匹配的行进行更新或删除。如果与指定的匹配列对应的任何功能属性包含空值或缺少值,此功能将被拒绝。

  • Clause:相应的WHERE子句生成器允许您构造WHERE子句。您还可以以内联方式键入WHERE子句,不启动WHERE子句生成器。用关键字where开始子句是可选的。

  • WHERE子句生成器使用户更容易引用特性属性值,目标表列,并调用FME功能。WHERE子句首先作为一个FME表达式进行计算,在应用到目标表之前。
  • 用户可以将WHERE子句设置为该功能的任何属性。对于现有的FME用户,现在必须通过WHERE子句指定熟悉的fme_where属性,使其生效(参见上面的示例)。
  • 如果WHERE子句无效,此功能将被拒绝或翻译将失败,取决于具体的作者。
  • 对于高级用户,条件WHERE子句可以通过条件值编辑器创建,以适应不同的功能组。

参见:写入模式