OleDbParameter.SourceColumnNullMapping 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指示源列是否可为 null。 这允许 DbCommandBuilder 为可为 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 DbCommandBuilder用于在处理可为 null 列时正确生成更新命令。 通常,使用 SourceColumnNullMapping 仅限于继承自 DbCommandBuilder的开发人员。
DbCommandBuilder 使用此属性可确定源列是否可为 null,并将此属性设置为 true 可为 null,如果为 null,则 false 不为 null。 生成 Update 语句时 DbCommandBuilder ,它会检查 SourceColumnNullMapping 每个参数。 如果该属性是 true, DbCommandBuilder 则生成如下 WHERE 子句(在此查询表达式中,“FieldName”表示字段的名称):
((@IsNull_FieldName = 1 AND FieldName IS NULL) OR
(FieldName = @Original_FieldName))
如果 SourceColumnNullMapping 字段为 false, DbCommandBuilder 则生成以下 WHERE 子句:
FieldName = @OriginalFieldName
此外,如果源字段包含 null, @IsNull_FieldName 则包含 1;如果源字段不包含,则包含 0。 此机制允许SQL Server中的性能优化,并提供跨多个提供程序工作的常见代码。