SqlParameter.SourceColumnNullMapping Proprietà

Definizione

Ottiene o imposta un valore che indica se la colonna di origine è nullable.Sets or gets a value which indicates whether the source column is nullable. Questo consente a SqlCommandBuilder di generare correttamente istruzioni Update per le colonne nullable.This allows SqlCommandBuilder to correctly generate Update statements for nullable columns.

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

Valore della proprietà

true se la colonna di origine ammette valori Null; in caso contrario, false.true if the source column is nullable; false if it is not.

Commenti

SourceColumnNullMapping viene utilizzato dal SqlCommandBuilder per generare correttamente i comandi di aggiornamento quando si gestiscono le colonne che ammettono i valori null.SourceColumnNullMapping is used by the SqlCommandBuilder to correctly generate update commands when dealing with nullable columns. In genere, l'uso di SourceColumnNullMapping è limitato agli sviluppatori che ereditano da SqlCommandBuilder.Generally, use of SourceColumnNullMapping is limited to developers inheriting from SqlCommandBuilder.

DbCommandBuilder utilizza questa proprietà per determinare se la colonna di origine ammette valori null e imposta questa proprietà su true se ammette i valori null e false in caso contrario.DbCommandBuilder uses this property to determine whether the source column is nullable, and sets this property to true if it is nullable, and false if it is not. Quando SqlCommandBuilder genera la relativa istruzione Update, viene esaminata la SourceColumnNullMapping per ogni parametro.When SqlCommandBuilder is generating its Update statement, it examines the SourceColumnNullMapping for each parameter. Se la proprietà è true, SqlCommandBuilder genera una clausola WHERE come la seguente (in questa espressione di query "FieldName" rappresenta il nome del campo):If the property is true, SqlCommandBuilder generates a WHERE clauses like the following (in this query expression, "FieldName" represents the name of the field):

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

Se SourceColumnNullMapping per il campo è false, SqlCommandBuilder genera la clausola WHERE seguente:If SourceColumnNullMapping for the field is false, SqlCommandBuilder generates the following WHERE clause:

FieldName = @OriginalFieldName  

Inoltre, @IsNull_FieldName contiene 1 se il campo di origine contiene null e 0 in caso contrario.In addition, @IsNull_FieldName contains 1 if the source field contains null, and 0 if it does not. Questo meccanismo consente di ottimizzare le prestazioni in SQL Server e fornisce codice comune che funziona in più provider.This mechanism allows for a performance optimization in SQL Server, and provides for common code that works across multiple providers.

Si applica a

Vedi anche