SqlParameter.SourceColumnNullMapping 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定值,這個值表示來源資料行是否可為 Null。 這可讓 SqlCommandBuilder 正確產生可為 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
屬性值
如果來源資料行可為 Null,則為 true
;否則為 false
。
備註
SourceColumnNullMapping 由 SqlCommandBuilder 使用 ,在處理可為 Null 的數據行時正確產生更新命令。 一般而言,使用 SourceColumnNullMapping 僅限於繼承自 的 SqlCommandBuilder開發人員。
DbCommandBuilder 會使用這個屬性來判斷源資料行是否可為 Null,如果此屬性 true
為可為 Null,則 false
設定為 ,如果不是,則設定為 。 當產生 Update 語句時 SqlCommandBuilder ,它會檢查 SourceColumnNullMapping 每個參數的 。 如果屬性為 true
, SqlCommandBuilder 則在此查詢表達式中產生類似下列 (的 WHERE 子句,“FieldName” 代表功能變數名稱) :
((@IsNull_FieldName = 1 AND FieldName IS NULL) OR
(FieldName = @Original_FieldName))
如果 SourceColumnNullMapping 欄位為 false, SqlCommandBuilder 則會產生下列 WHERE 子句:
FieldName = @OriginalFieldName
此外, @IsNull_FieldName 如果來源欄位包含 Null,則包含 1,如果不包含,則包含 0。 此機制允許 SQL Server 中的效能優化,並提供跨多個提供者運作的一般程序代碼。