OracleParameter.SourceColumnNullMapping Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy kolumna źródłowa dopuszcza wartość null.Gets or sets a value which indicates whether the source column is nullable. Pozwala to OracleCommandBuilder na prawidłowe generowanie instrukcji update dla kolumn dopuszczających wartości null.This allows OracleCommandBuilder 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

Wartość właściwości

Boolean

true Jeśli kolumna źródłowa ma wartość null; w przeciwnym razie false .true if the source column is nullable; otherwise, false.

Uwagi

SourceColumnNullMapping jest używana przez OracleCommandBuilder program do prawidłowej generacji poleceń aktualizacji w przypadku kolumn o wartości null.SourceColumnNullMapping is used by the OracleCommandBuilder to correctly generate update commands when dealing with nullable columns. Ogólnie rzecz biorąc, korzystanie z programu SourceColumnNullMapping jest ograniczone do deweloperów dziedziczących z programu OracleCommandBuilder .Generally, use of SourceColumnNullMapping is limited to developers inheriting from OracleCommandBuilder.

DbCommandBuilder używa tej właściwości, aby określić, czy kolumna źródłowa dopuszcza wartość null, i ustawia tę właściwość na true , jeśli nie jest to wartość null, i false Jeśli nie jest.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. Kiedy OracleCommandBuilder generuje swoją instrukcję Update, bada SourceColumnNullMapping dla każdego parametru.When OracleCommandBuilder is generating its Update statement, it examines the SourceColumnNullMapping for each parameter. Jeśli właściwość ma wartość true , program OracleCommandBuilder generuje klauzule WHERE podobne do następujących (w tym wyrażeniu zapytania "NazwaPola" reprezentuje nazwę pola):If the property is true, OracleCommandBuilder 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))  

Jeśli SourceColumnNullMapping pole ma wartość false, OracleCommandBuilder generuje następującą klauzulę WHERE:If SourceColumnNullMapping for the field is false, OracleCommandBuilder generates the following WHERE clause:

FieldName = @OriginalFieldName  

Ponadto @IsNull_FieldName zawiera 1, jeśli pole źródłowe zawiera wartość null, a wartość 0, jeśli nie.In addition, @IsNull_FieldName contains 1 if the source field contains null, and 0 if it does not. Ten mechanizm umożliwia optymalizację wydajności w programie Oracle Server i zapewnia obsługę wspólnego kodu, który działa dla wielu dostawców.This mechanism allows for a performance optimization in Oracle Server, and provides for common code that works across multiple providers.

Dotyczy