OracleParameter.SourceColumnNullMapping 属性

定义

获取或设置一个值,该值指示源列是否可以为 null。 通过此操作,OracleCommandBuilder 能够为可以为 null 的列正确地生成 Update 语句。

public:
 virtual property bool SourceColumnNullMapping { bool get(); void set(bool value); };
public override bool SourceColumnNullMapping { get; set; }
member this.SourceColumnNullMapping : bool with get, set
Public Overrides Property SourceColumnNullMapping As Boolean

属性值

true 如果源列可以为 null,则为 ;否则为 false

注解

SourceColumnNullMapping 用于 OracleCommandBuilder 在处理可为空列时正确生成更新命令。 通常,使用 SourceColumnNullMapping 仅限于继承自 OracleCommandBuilder的开发人员。

DbCommandBuilder 使用此属性来确定源列是否可为空,并将此属性 true 设置为 (如果可为 null)和 false (如果不是)。 生成其 Update 语句时 OracleCommandBuilder ,它会检查 SourceColumnNullMapping 每个参数的 。 如果 属性为 trueOracleCommandBuilder 则在此查询表达式中生成如下 (的 WHERE 子句,“FieldName”表示) 字段的名称:

((@IsNull_FieldName = 1 AND FieldName IS NULL) OR   
  (FieldName = @Original_FieldName))  

如果 SourceColumnNullMapping 字段为 false, OracleCommandBuilder 则生成以下 WHERE 子句:

FieldName = @OriginalFieldName  

此外,如果源字段包含 null, @IsNull_FieldName 则包含 1;如果不包含,则包含 0。 此机制允许在 Oracle Server 中优化性能,并提供跨多个提供程序工作的通用代码。

适用于