OleDbCommandBuilder Klasse

Definition

Generiert automatisch Befehle für einzelne Tabellen, durch die an einem DataSet vorgenommene Änderungen mit der zugeordneten Datenbank abgeglichen werden.Automatically generates single-table commands that are used to reconcile changes made to a DataSet with the associated database. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

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

Beispiele

Im folgenden Beispiel OleDbCommandwerden, zusammen OleDbDataAdapter und OleDbConnection, verwendet, um Zeilen aus einer Datenquelle auszuwählen.The following example uses the OleDbCommand, along OleDbDataAdapter and OleDbConnection, to select rows from a data source. Im Beispiel wird eine initialisierte DataSet, eine Verbindungs Zeichenfolge, eine Abfrage Zeichenfolge, die eine SQL SELECT-Anweisung ist, und eine Zeichenfolge, die den Namen der Datenquellen Tabelle ist, an Sie übermittelt.The example is passed an initialized DataSet, a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. Im Beispiel wird dann ein OleDbCommandBuildererstellt.The example then creates an OleDbCommandBuilder.

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

Generiert nicht automatisch die SQL-Anweisungen, die erforderlich sind, um Änderungen, DataSet die an einem vorgenommen wurden, mit der zugeordneten Datenquelle abzustimmen. OleDbDataAdapterThe OleDbDataAdapter does not automatically generate the SQL statements required to reconcile changes made to a DataSet with the associated data source. Sie können jedoch ein OleDbCommandBuilder -Objekt erstellen, um automatisch SQL-Anweisungen für Aktualisierungen in einer Tabelle zu generieren, wenn Sie die OleDbDataAdapter SelectCommand -Eigenschaft von festgelegt haben.However, you can create an OleDbCommandBuilder object to automatically generate SQL statements for single-table updates if you set the SelectCommand property of the OleDbDataAdapter. Anschließend werden alle zusätzlichen SQL-Anweisungen, die Sie nicht festlegen, von OleDbCommandBuildergeneriert.Then, any additional SQL statements that you do not set are generated by the OleDbCommandBuilder.

Die OleDbCommandBuilder registriert sich selbst als Listener für RowUpdating Ereignisse, wenn Sie die DataAdapter -Eigenschaft festlegen.The OleDbCommandBuilder registers itself as a listener for RowUpdating events whenever you set the DataAdapter property. Sie können jeweils nur ein OleDbDataAdapter oder OleDbCommandBuilder ein Objekt gleichzeitig zuordnen.You can only associate one OleDbDataAdapter or OleDbCommandBuilder object with each other at one time.

Zum Generieren von INSERT-, Update-oder DELETE- OleDbCommandBuilder Anweisungen SelectCommand verwendet die-Eigenschaft, um einen erforderlichen Satz von Metadaten automatisch abzurufen.To generate INSERT, UPDATE, or DELETE statements, the OleDbCommandBuilder uses the SelectCommand property to retrieve a required set of metadata automatically. Wenn Sie SelectCommand nach dem Abrufen der Metadaten, z. b. nach dem ersten Update, ändern, sollten Sie RefreshSchema die-Methode zum Aktualisieren der Metadaten aufruft.If you change the SelectCommand after the metadata is retrieved, such as after the first update, you should call the RefreshSchema method to update the metadata.

Der OleDbCommandBuilder verwendet auch die ConnectionEigenschaften CommandTimeout, und Transaction , auf die von SelectCommandverwiesen wird.The OleDbCommandBuilder also uses the Connection, CommandTimeout, and Transaction properties referenced by the SelectCommand. Der Benutzer sollte anrufen RefreshSchema , wenn eine oder mehrere dieser Eigenschaften geändert werden, oder wenn der SelectCommand selbst ersetzt wird.The user should call RefreshSchema if one or more of these properties are modified, or if the SelectCommand itself is replaced. Andernfalls behalten InsertCommanddie UpdateCommandEigenschaften, DeleteCommand und Ihre vorherigen Werte bei.Otherwise the InsertCommand, UpdateCommand, and DeleteCommand properties retain their previous values.

Wenn Sie aufzurufen Dispose, OleDbCommandBuilder OleDbDataAdapterwird die Zuordnung der aufgehoben, und die generierten Befehle werden nicht mehr verwendet.If you call Dispose, the OleDbCommandBuilder is disassociated from the OleDbDataAdapter, and the generated commands are no longer used.

Konstruktoren

OleDbCommandBuilder()

Initialisiert eine neue Instanz der OleDbCommandBuilder-Klasse.Initializes a new instance of the OleDbCommandBuilder class.

OleDbCommandBuilder(OleDbDataAdapter)

Initialisiert eine neue Instanz der OleDbCommandBuilder-Klasse mit dem zugeordneten OleDbDataAdapter-Objekt.Initializes a new instance of the OleDbCommandBuilder class with the associated OleDbDataAdapter object.

Eigenschaften

CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.Gets a value indicating whether the component can raise an event.

(Geerbt von Component)
Container

Ruft den IContainer ab, der die Component enthält.Gets the IContainer that contains the Component.

(Geerbt von Component)
DataAdapter

Ruft ein OleDbDataAdapter-Objekt ab, für das automatisch SQL-Anweisungen erstellt werden, oder legt dieses fest.Gets or sets an OleDbDataAdapter object for which SQL statements are automatically generated.

DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.Gets a value that indicates whether the Component is currently in design mode.

(Geerbt von Component)
Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.Gets the list of event handlers that are attached to this Component.

(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.Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens.

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.Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens.

Site

Ruft den ISite von Component ab oder legt ihn fest.Gets or sets the ISite of the Component.

(Geerbt von Component)

Methoden

CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(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.Retrieves parameter information from the stored procedure specified in the OleDbCommand and populates the Parameters collection of the specified OleDbCommand object.

Dispose()

Gibt alle vom Component verwendeten Ressourcen frei.Releases all resources used by the Component.

(Geerbt von Component)
Dispose(Boolean)

Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Geerbt von Component)
Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetDeleteCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Löschvorgängen in der Datenquelle erforderlich ist.Gets the automatically generated OleDbCommand object required to perform deletions at the data source.

GetDeleteCommand(Boolean)

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Löschvorgängen in der Datenquelle erforderlich ist.Gets the automatically generated OleDbCommand object required to perform deletions at the data source.

GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetInsertCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Einfügevorgängen in der Datenquelle erforderlich ist.Gets the automatically generated OleDbCommand object required to perform insertions at the data source.

GetInsertCommand(Boolean)

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Einfügevorgängen in der Datenquelle erforderlich ist.Gets the automatically generated OleDbCommand object required to perform insertions at the data source.

GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.Returns an object that represents a service provided by the Component or by its Container.

(Geerbt von Component)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
GetUpdateCommand()

Ruft das automatisch generierte OleDbCommand-Objekt ab, das zum Ausführen von Aktualisierungen in der Datenquelle erforderlich ist.Gets the automatically generated OleDbCommand object required to perform updates at the data source.

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.Gets the automatically generated OleDbCommand object required to perform updates at the data source, optionally using columns for parameter names.

InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Geerbt von MarshalByRefObject)
QuoteIdentifier(String)

Bei einem Bezeichner ohne Anführungszeichen in der richtigen Katalogschreibweise wird die korrekte Form des jeweiligen Bezeichners mit Anführungszeichen zurückgegeben.Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. Dies schließt ein, dass eingebettete Anführungszeichen im Bezeichner ordnungsgemäß mit Escapezeichen versehen werden.This includes correctly escaping any embedded quotes in the identifier.

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.Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. Dies schließt ein, dass eingebettete Anführungszeichen im Bezeichner ordnungsgemäß mit Escapezeichen versehen werden.This includes correctly escaping any embedded quotes in the identifier.

RefreshSchema()

Löscht die diesem OleDbCommandBuilder zugeordneten Befehle.Clears the commands associated with this OleDbCommandBuilder.

ToString()

Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden).Returns a String containing the name of the Component, if any. Diese Methode darf nicht überschrieben werden.This method should not be overridden.

(Geerbt von Component)
UnquoteIdentifier(String)

Bei einem Bezeichner mit Anführungszeichen wird die korrekte Form dieses Bezeichners ohne Anführungszeichen zurückgegeben.Given a quoted identifier, returns the correct unquoted form of that identifier. Dies schließt ein, dass Escapezeichen für eingebettete Anführungszeichen im Bezeichner ordnungsgemäß entfernt werden.This includes correctly un-escaping any embedded quotes in the identifier.

UnquoteIdentifier(String, OleDbConnection)

Bei einem Bezeichner mit Anführungszeichen wird die korrekte Form dieses Bezeichners ohne Anführungszeichen zurückgegeben.Given a quoted identifier, returns the correct unquoted form of that identifier. Dies schließt ein, dass Escapezeichen für eingebettete Anführungszeichen im Bezeichner ordnungsgemäß entfernt werden.This includes correctly un-escaping any embedded quotes in the identifier.

Ereignisse

Disposed

Tritt ein, wenn die Komponente durch einen Aufruf der Dispose()-Methode freigegeben wird.Occurs when the component is disposed by a call to the Dispose() method.

(Geerbt von Component)

Gilt für:

Siehe auch