Teilen über


OleDbCommandBuilder Klasse

Definition

Generiert automatisch Befehle für einzelne Tabellen, durch die an einem DataSet vorgenommene Änderungen mit der zugeordneten Datenbank abgeglichen werden. Diese Klasse kann nicht vererbt werden.

public ref class OleDbCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public ref class OleDbCommandBuilder sealed : System::ComponentModel::Component
public sealed class OleDbCommandBuilder : System.Data.Common.DbCommandBuilder
public sealed class OleDbCommandBuilder : System.ComponentModel.Component
type OleDbCommandBuilder = class
    inherit DbCommandBuilder
type OleDbCommandBuilder = class
    inherit Component
Public NotInheritable Class OleDbCommandBuilder
Inherits DbCommandBuilder
Public NotInheritable Class OleDbCommandBuilder
Inherits Component
Vererbung
Vererbung
OleDbCommandBuilder

Beispiele

Im folgenden Beispiel werden die OleDbCommand- OleDbDataAdapter und OleDbConnection- zum Auswählen von Zeilen aus einer Datenquelle verwendet. Das Beispiel wird eine initialisierte DataSet, eine Verbindungszeichenfolge, eine Abfragezeichenfolge, bei der es sich um eine SQL SELECT-Anweisung handelt, und eine Zeichenfolge übergeben, die den Namen der Datenquellentabelle darstellt. Im Beispiel wird dann ein OleDbCommandBuildererstellt.

public static DataSet UpdateRows(string connectionString,
    string queryString, string tableName)
{
    DataSet dataSet = new DataSet();
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        OleDbDataAdapter adapter = new OleDbDataAdapter();
        adapter.SelectCommand = new OleDbCommand(queryString, connection);
        OleDbCommandBuilder cb = new OleDbCommandBuilder(adapter);

        connection.Open();

        adapter.Fill(dataSet, tableName);

        //code to modify data in DataSet here

        cb.GetDeleteCommand();
        //Without the OleDbCommandBuilder this line would fail
        adapter.Update(dataSet, tableName);

        connection.Close();
    }
    return dataSet;
}
Public Shared Function UpdateRows(ByVal connectionString As String, _
ByVal queryString As String, ByVal tableName As String) As DataSet

    Dim dataSet As New DataSet()

    Using connection As New OleDbConnection(connectionString)
        Dim adapter As New OleDbDataAdapter()
        adapter.SelectCommand = New OleDbCommand(queryString, connection)
        Dim builder As New OleDbCommandBuilder(adapter)

        connection.Open()

        adapter.Fill(dataSet, tableName)

        ' Code to modify data in DataSet here 

        builder.GetUpdateCommand()

        ' Without the OleDbCommandBuilder this line would fail.
        adapter.Update(dataSet, tableName)
    End Using

    Return dataSet
End Function

Hinweise

Der OleDbDataAdapter generiert nicht automatisch die SQL-Anweisungen, die erforderlich sind, um Änderungen an einem DataSet mit der zugehörigen Datenquelle abzugleichen. Sie können jedoch ein OleDbCommandBuilder -Objekt zum automatischen Generieren von SQL-Anweisungen für Einzeltabellenupdates erstellen, wenn Sie die SelectCommand -Eigenschaft von OleDbDataAdapterfestlegen. Anschließend werden alle zusätzlichen SQL-Anweisungen, die Sie nicht festlegen, vom OleDbCommandBuildergeneriert.

Der OleDbCommandBuilder registriert sich selbst als Listener für RowUpdating Ereignisse, wenn Sie die DataAdapter -Eigenschaft festlegen. Sie können nur ein OleDbDataAdapter Objekt oder OleDbCommandBuilder ein Objekt gleichzeitig miteinander zuordnen.

Zum Generieren von INSERT-, UPDATE- oder DELETE-Anweisungen wird die OleDbCommandBuilderSelectCommand -Eigenschaft verwendet, um einen erforderlichen Metadatensatz automatisch abzurufen. Wenn Sie die SelectCommand ändern, nachdem die Metadaten abgerufen wurden, z. B. nach dem ersten Update, sollten Sie die RefreshSchema -Methode aufrufen, um die Metadaten zu aktualisieren.

Verwendet OleDbCommandBuilder auch die ConnectionEigenschaften , CommandTimeoutund, auf Transaction die SelectCommandvon verwiesen wird. Der Benutzer sollte aufrufen RefreshSchema , wenn eine oder mehrere dieser Eigenschaften geändert oder die SelectCommand selbst ersetzt wird. Andernfalls behalten die InsertCommandEigenschaften , UpdateCommandund DeleteCommand ihre vorherigen Werte bei.

Wenn Sie aufrufen Dispose, wird die OleDbCommandBuilder Zuordnung zu dem OleDbDataAdaptergetrennt, und die generierten Befehle werden nicht mehr verwendet.

Konstruktoren

OleDbCommandBuilder()

Initialisiert eine neue Instanz der OleDbCommandBuilder-Klasse.

OleDbCommandBuilder(OleDbDataAdapter)

Initialisiert eine neue Instanz der OleDbCommandBuilder-Klasse mit dem zugeordneten OleDbDataAdapter-Objekt.

Eigenschaften

CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.

(Geerbt von Component)
CatalogLocation

Ruft die CatalogLocation für eine Instanz der DbCommandBuilder-Klasse ab oder legt sie fest.

(Geerbt von DbCommandBuilder)
CatalogSeparator

Ruft eine Zeichenfolge als Katalogtrennzeichen für eine Instanz der DbCommandBuilder-Klasse ab oder legt sie fest.

(Geerbt von DbCommandBuilder)
ConflictOption

Gibt an, welche ConflictOption vom DbCommandBuilder verwendet werden muss.

(Geerbt von DbCommandBuilder)
Container

Ruft die IContainer ab, die in der Component enthalten ist.

(Geerbt von Component)
DataAdapter

Ruft ein OleDbDataAdapter-Objekt ab, für das automatisch SQL-Anweisungen erstellt werden, oder legt dieses fest.

DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.

(Geerbt von Component)
Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.

(Geerbt von Component)
QuotePrefix

Ruft das oder die Anfangszeichen ab, die beim Angeben von Datenbankobjekten (z. B. Tabellen oder Spalten) verwendet werden sollen, deren Namen Zeichen wie Leerzeichen oder reservierte Token enthalten, oder legt diese fest.

QuotePrefix

Ruft das oder die Anfangszeichen ab, die beim Angeben von Datenbankobjekten (z. B. Tabellen oder Spalten) verwendet werden sollen, deren Namen Zeichen wie Leerzeichen oder reservierte Token enthalten, oder legt diese fest.

(Geerbt von DbCommandBuilder)
QuoteSuffix

Ruft das oder die Endzeichen ab, die beim Angeben von Datenbankobjekten (z. B. Tabellen oder Spalten) verwendet werden sollen, deren Namen Zeichen wie Leerzeichen oder reservierte Token enthalten, oder legt diese fest.

QuoteSuffix

Ruft das oder die Endzeichen ab, die beim Angeben von Datenbankobjekten (z. B. Tabellen oder Spalten) verwendet werden sollen, deren Namen Zeichen wie Leerzeichen oder reservierte Token enthalten, oder legt diese fest.

(Geerbt von DbCommandBuilder)
SchemaSeparator

Ruft das als Trennzeichen zwischen dem Schemabezeichner und anderen Bezeichnern zu verwendende Zeichen ab oder legt dieses fest.

(Geerbt von DbCommandBuilder)
SetAllValues

Gibt an, ob alle Spaltenwerte oder nur die geänderten in einer Aktualisierungsanweisung eingeschlossen sind.

(Geerbt von DbCommandBuilder)
Site

Ruft den ISite von Component ab oder legt ihn fest.

(Geerbt von Component)

Methoden

ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean)

Ermöglicht es der Anbieterimplementierung der DbCommandBuilder-Klasse, zusätzliche Parametereigenschaften zu behandeln.

(Geerbt von DbCommandBuilder)
CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.

(Geerbt von MarshalByRefObject)
DeriveParameters(OleDbCommand)

Ruft Parameterinformationen aus der im OleDbCommand angegebenen gespeicherten Prozedur ab und füllt die Parameters-Auflistung des angegebenen OleDbCommand-Objekts auf.

Dispose()

Gibt alle vom Component verwendeten Ressourcen frei.

(Geerbt von Component)
Dispose(Boolean)

Gibt die von DbCommandBuilder verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

(Geerbt von DbCommandBuilder)
Dispose(Boolean)

Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

(Geerbt von Component)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetDeleteCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Löschvorgängen in der Datenquelle erforderlich ist.

GetDeleteCommand(Boolean)

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Löschvorgängen in der Datenquelle erforderlich ist.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetInsertCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Einfügevorgängen in der Datenquelle erforderlich ist.

GetInsertCommand(Boolean)

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Einfügevorgängen in der Datenquelle erforderlich ist.

GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetParameterName(Int32)

Gibt den Namen des angegebenen Parameters im Format zurück @p#. Verwenden Sie diesen zum Erstellen eines benutzerdefinierten Befehls-Generators.

(Geerbt von DbCommandBuilder)
GetParameterName(String)

Gibt den vollständigen Parameternamen zurück, wenn der partielle Parameternamen angegeben ist.

(Geerbt von DbCommandBuilder)
GetParameterPlaceholder(Int32)

Gibt den Platzhalter für den Parameter in der zugeordneten SQL-Anweisung zurück.

(Geerbt von DbCommandBuilder)
GetSchemaTable(DbCommand)

Gibt die Schematabelle für den DbCommandBuilder zurück.

(Geerbt von DbCommandBuilder)
GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.

(Geerbt von Component)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetUpdateCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Aktualisierungen in der Datenquelle erforderlich ist.

GetUpdateCommand(Boolean)

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Aktualisierungen in der Datenquelle erforderlich ist, wobei optional Spalten für Parameternamen verwendet werden.

InitializeCommand(DbCommand)

Legt die Eigenschaften CommandTimeout, Transaction, CommandType und UpdateRowSource für DbCommand erneut fest.

(Geerbt von DbCommandBuilder)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.

(Geerbt von MarshalByRefObject)
QuoteIdentifier(String, OleDbConnection)

Bei einem Bezeichner ohne Anführungszeichen in der richtigen Katalogschreibweise wird die korrekte Form des jeweiligen Bezeichners mit Anführungszeichen zurückgegeben. Dies schließt ein, dass eingebettete Anführungszeichen im Bezeichner ordnungsgemäß mit Escapezeichen versehen werden.

QuoteIdentifier(String)

Bei einem Bezeichner ohne Anführungszeichen in der richtigen Katalogschreibweise wird die korrekte Form des jeweiligen Bezeichners mit Anführungszeichen zurückgegeben. Dies schließt ein, dass eingebettete Anführungszeichen im Bezeichner ordnungsgemäß mit Escapezeichen versehen werden.

RefreshSchema()

Löscht die diesem OleDbCommandBuilder zugeordneten Befehle.

RefreshSchema()

Löscht die diesem DbCommandBuilder zugeordneten Befehle.

(Geerbt von DbCommandBuilder)
RowUpdatingHandler(RowUpdatingEventArgs)

Fügt einen Ereignishandler für das RowUpdating-Ereignis hinzu.

(Geerbt von DbCommandBuilder)
SetRowUpdatingHandler(DbDataAdapter)

Registriert den DbCommandBuilder zum Behandeln des RowUpdating-Ereignisses für einen DbDataAdapter.

(Geerbt von DbCommandBuilder)
ToString()

Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden). Diese Methode darf nicht überschrieben werden.

(Geerbt von Component)
UnquoteIdentifier(String, OleDbConnection)

Bei einem Bezeichner mit Anführungszeichen wird die korrekte Form dieses Bezeichners ohne Anführungszeichen zurückgegeben. Dies schließt ein, dass Escapezeichen für eingebettete Anführungszeichen im Bezeichner ordnungsgemäß entfernt werden.

UnquoteIdentifier(String)

Bei einem Bezeichner mit Anführungszeichen wird die korrekte Form dieses Bezeichners ohne Anführungszeichen zurückgegeben. Dies schließt ein, dass Escapezeichen für eingebettete Anführungszeichen im Bezeichner ordnungsgemäß entfernt werden.

Ereignisse

Disposed

Tritt auf, wenn die Komponente von einem Aufruf der Dispose()-Methode verworfen wird.

(Geerbt von Component)

Gilt für:

Weitere Informationen