Microsoft SQL Server和Azure SQL数据库非空间写器:特性类型参数
要访问特征类型参数,单击齿轮图标在工作空间中打开的特性类型功能类型参数编辑器。要始终在工作台中显示编辑器,您可以选择View > Windows >参数编辑器。
一般
所有特性类型共享类似的通用参数,包括特性类型名称、阅读器或写入器名称和几何形状。
在大多数编写器特性类型参数对话框中,您还可以控制动态模式定义。一些数据库格式在输出表特性类型上接受表限定符前缀。
看到编辑作者功能类型为更多的信息。
这些参数仅适用于选定的特性类型,而不适用于整个编写器。
提示:如果这里列出的特征类型参数与作家级参数冲突,那么笔者参数将被忽略,此功能类型参数将被使用。
表设置:常规
该参数允许用户指定如何将特性写入目标表。支持的功能操作有:
- 插入:追加行到使用上的功能属性的目标表。
- 更新:使用特性上的属性更新现有表列。必须在行选择组中指定选择方法。
- 删除:删除现有的表行。必须在行选择组中指定选择方法。
- fme_db_operation:特征的操作将通过所述属性来确定fme_db_operation在每个输入特征。必须在行选择组中指定选择方法。的价值fme_db_operation将按下列方式处理:
- 如果该值为空,空,或丢失,它将被视为插入。
- 该值接下来将被匹配为插入、更新和删除,大小写不敏感。
- 如果没有比赛,该功能将被拒绝。
- 如果有匹配,则对该特征执行匹配的特征操作。
提示:的fme_db_operation属性现在会导致功能抑制时,功能操作设置为插入,更新,或删除。此行为不同于FME以前的版本。
更多信息功能操作。
控制特性类型如何处理目标表或列表。以下选项可供选择:
- 利用现有的:写到现有的表或列表。如果目标表/列表不存在,翻译将失败。
- 如果需要创建:创建目标表/列表中,如果它不存在。
- 删除和创建:如果目标表/列表存在,删除它,然后创建它。写入器将删除并在向表写入任何特性之前重新创建表。当处理第一个输入特性时,表将被覆盖。如果没有向特性类型发送任何特性,则不会覆盖相应的表。
- 截断现有:(此选项并非适用于所有格式。)如果目标表/列表不存在,转换将失败。否则,删除现有表或列表中的所有行。
行选择
当插入到表中,行选择被忽略。当更新,并从表中删除,以用于选择行操作在其上被指定的条件的需要。此参数组提供了两种方法来构造选择条件:
对应的列选择器对话框中指定的列将用于匹配目标行。将选择所有匹配的行进行更新或删除。如果与指定的匹配列对应的任何特性属性包含空值或缺失值,则该特性将被拒绝。
此参数将打开一个WHERE子句生成器。您也可以输入一个WHERE子句内联,而无需启动生成器。它是可选的用字开始的条款在哪里。
WHERE子句生成器使得它便于用户参考特征属性值,目标表中的列,并调用FME功能。WHERE子句首先计算作为FME表达,被传递到目标数据库之前。
如果WHERE子句不正确或其评估失败,则翻译将失败。否则,如果WHERE子句通过了FME求值,但它是SQL无效的,则该特性将被拒绝或转换将失败。
对于高级用户,通过条件值编辑器创建的条件FME表达式可以用于创建WHERE子句。
提示:可以将WHERE子句设置为属性。这支持工作区迁移和现有的工作流亚搏在线fme_where。(直接支持fme_where已弃用。)给习惯于使用的高级用户fme_where如果功能操作设置为更新,删除,或fme_db_operation,一fme_where与匹配列或WHERE子句冲突的属性将导致特性拒绝。
表设置:先进
在插入特性时,此参数确定标识列是否自动填充。
标识列是数据库服务器按顺序自动填充其值的列。此参数允许您重写此行为并提供值。
每个表最多只能指定一个标识列。
- 如果指定了标识列,则选项是使用与标识列对应的feature属性中的值填充目标标识列。
- 的选项没有使目标识别列由数据库服务器自动填充。
此参数不影响其他特性操作。
注意:注意:对于给定的MSSQL连接,只有一种特性类型可以启用此选项;一个写入器中的所有特性类型共享一个连接,如果它们使用相同的连接参数,那么连接可以在写入器之间共享。
有关IDENTITY列的更多信息,请参阅Microsoft Developer网络话题身份(特性)(transact - sql)。