Udostępnij za pośrednictwem


OdbcCommandBuilder Klasa

Definicja

Automatycznie generuje polecenia z jedną tabelą, które są używane do uzgadniania zmian wprowadzonych w DataSet skojarzonym źródle danych. Klasa ta nie może być dziedziczona.

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

Przykłady

W poniższym przykładzie użyto OdbcCommandelementów , wraz z elementami OdbcDataAdapter i OdbcConnection, aby wybrać wiersze ze źródła danych. Przykład jest przekazywany zainicjowany DataSet, parametry połączenia, ciąg zapytania, który jest instrukcją SQL SELECT, i ciąg, który jest nazwą tabeli źródła danych. W tym przykładzie zostanie utworzony element OdbcCommandBuilder.

public static DataSet SelectOdbcSrvRows(string connectionString,
    string queryString, string tableName)
{
    DataSet dataSet = new DataSet();
    using (OdbcConnection connection = new OdbcConnection(connectionString))
    {
        OdbcDataAdapter adapter = new OdbcDataAdapter();
        adapter.SelectCommand =
            new OdbcCommand(queryString, connection);
        OdbcCommandBuilder builder =
            new OdbcCommandBuilder(adapter);

        connection.Open();

        adapter.Fill(dataSet, tableName);

        //code to modify data in DataSet here

        //Without the OdbcCommandBuilder this line would fail
        adapter.Update(dataSet, tableName);
    }
    return dataSet;
}
Public Function SelectOdbcSrvRows( _
    ByVal connectionString As String, ByVal queryString As String, _
    ByVal tableName As String) As DataSet

    Dim dataSet As New DataSet()

    Using connection As New OdbcConnection(connectionString)
        Dim adapter As New OdbcDataAdapter()
        adapter.SelectCommand = _
            New OdbcCommand(queryString, connection)
        Dim builder As New OdbcCommandBuilder(adapter)

        connection.Open()

        adapter.Fill(dataSet, tableName)

        ' Code to modify data in DataSet here 

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

    Return dataSet
End Function

Uwagi

Instrukcja OdbcDataAdapter SQL nie generuje automatycznie instrukcji SQL wymaganych do uzgadniania zmian wprowadzonych w skojarzonym DataSet ze źródłem danych. Można jednak utworzyć OdbcCommandBuilder obiekt, który generuje instrukcje SQL dla aktualizacji pojedynczej OdbcDataAdaptertabeli, ustawiając SelectCommand właściwość . Następnie OdbcCommandBuilder generuje dodatkowe instrukcje SQL, które nie są ustawione.

Relacja między elementem a OdbcDataAdapter odpowiadającym jej elementem OdbcCommandBuilder jest zawsze jeden do jednego. Aby utworzyć tę korespondencję OdbcDataAdapter , należy ustawić właściwość OdbcCommandBuilder obiektu. OdbcCommandBuilder Powoduje to zarejestrowanie się jako odbiornik, co powoduje wygenerowanie danych wyjściowych zdarzeń wpływających RowUpdating na element DataSet.

Aby wygenerować instrukcje INSERT, UPDATE lub DELETE, OdbcCommandBuilder właściwość używa SelectCommand właściwości do pobierania wymaganego zestawu metadanych. Jeśli zmienisz wartość SelectCommand po pobraniu metadanych, na przykład po pierwszej aktualizacji, należy wywołać RefreshSchema metodę w celu zaktualizowania metadanych.

Uwaga

Jeśli instrukcja SELECT przypisana do SelectCommand właściwości używa aliasowanych nazw kolumn, wynikowe instrukcje INSERT, UPDATE i DELETE mogą być niedokładne lub kończą się niepowodzeniem. Jeśli podstawowy sterownik ODBC nie może podać odpowiedniej nazwy kolumny podstawowej dla nazwy kolumny aliasu (przy użyciu wartości SQL_DESC_BASE_COLUMN_NAME wartości SQLColAttribute), nazwę aliasu można użyć w wygenerowanych instrukcjach INSERT, UPDATE i DELETE. Na przykład sterownik Microsoft ODBC dla oracle zwraca nazwę aliasu jako nazwę kolumny podstawowej. W związku z tym wygenerowane instrukcje INSERT, UPDATE i DELETE spowodują błędy.

Obiekt OdbcCommandBuilder używa Connectionrównież właściwości , CommandTimeouti Transaction , do których SelectCommandodwołuje się element . Użytkownik powinien wywołać metodę RefreshSchema , jeśli co najmniej jedna z tych właściwości zostanie zmodyfikowana lub jeśli wartość SelectCommand samej właściwości zostanie zmieniona. InsertCommandW przeciwnym razie właściwości , UpdateCommandi DeleteCommand zachowują swoje poprzednie wartości.

Jeśli wywołasz metodę Dispose, OdbcCommandBuilder element jest rozłączony z elementem OdbcDataAdapter, a wygenerowane polecenia nie są już używane.

Konstruktory

OdbcCommandBuilder()

Inicjuje nowe wystąpienie klasy OdbcCommandBuilder.

OdbcCommandBuilder(OdbcDataAdapter)

Inicjuje OdbcCommandBuilder nowe wystąpienie klasy ze skojarzonym OdbcDataAdapter obiektem.

Właściwości

CanRaiseEvents

Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie.

(Odziedziczone po Component)
CatalogLocation

Pobiera lub ustawia CatalogLocation dla wystąpienia DbCommandBuilder klasy .

(Odziedziczone po DbCommandBuilder)
CatalogSeparator

Pobiera lub ustawia ciąg używany jako separator wykazu dla wystąpienia DbCommandBuilder klasy.

(Odziedziczone po DbCommandBuilder)
ConflictOption

Określa, który ConflictOption ma być używany przez element DbCommandBuilder.

(Odziedziczone po DbCommandBuilder)
Container

Pobiera element IContainer zawierający element Component.

(Odziedziczone po Component)
DataAdapter

Pobiera lub ustawia OdbcDataAdapter obiekt, dla którego ten OdbcCommandBuilder obiekt będzie generować instrukcje SQL.

DesignMode

Pobiera wartość wskazującą, czy Component element jest obecnie w trybie projektowania.

(Odziedziczone po Component)
Events

Pobiera listę programów obsługi zdarzeń dołączonych do tego Componentelementu .

(Odziedziczone po Component)
QuotePrefix

Pobiera lub ustawia początkowy znak lub znaki do użycia podczas pracy z obiektami bazy danych (na przykład tabelami lub kolumnami), których nazwy zawierają znaki, takie jak spacje lub tokeny zarezerwowane.

QuotePrefix

Pobiera lub ustawia początkowy znak lub znaki do użycia podczas określania obiektów bazy danych (na przykład tabel lub kolumn), których nazwy zawierają znaki, takie jak spacje lub tokeny zarezerwowane.

(Odziedziczone po DbCommandBuilder)
QuoteSuffix

Pobiera lub ustawia znak końcowy lub znaki do użycia podczas pracy z obiektami bazy danych (na przykład tabelami lub kolumnami), których nazwy zawierają znaki, takie jak spacje lub tokeny zarezerwowane.

QuoteSuffix

Pobiera lub ustawia znak końcowy lub znaki do użycia podczas określania obiektów bazy danych (na przykład tabel lub kolumn), których nazwy zawierają znaki, takie jak spacje lub tokeny zarezerwowane.

(Odziedziczone po DbCommandBuilder)
SchemaSeparator

Pobiera lub ustawia znak do użycia dla separatora między identyfikatorem schematu a innymi identyfikatorami.

(Odziedziczone po DbCommandBuilder)
SetAllValues

Określa, czy wszystkie wartości kolumn w instrukcji aktualizacji są uwzględniane, czy tylko zmienione.

(Odziedziczone po DbCommandBuilder)
Site

Pobiera lub ustawia ISite element .Component

(Odziedziczone po Component)

Metody

ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean)

Umożliwia implementacji DbCommandBuilder dostawcy klasy obsługę dodatkowych właściwości parametrów.

(Odziedziczone po DbCommandBuilder)
CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
DeriveParameters(OdbcCommand)

Pobiera informacje o parametrach z procedury składowanej określonej w obiekcie OdbcCommand i wypełnia Parameters kolekcję określonego OdbcCommand obiektu.

Dispose()

Zwalnia wszelkie zasoby używane przez element Component.

(Odziedziczone po Component)
Dispose(Boolean)

Zwalnia zasoby niezarządzane używane przez element DbCommandBuilder i opcjonalnie zwalnia zasoby zarządzane.

(Odziedziczone po DbCommandBuilder)
Dispose(Boolean)

Zwalnia zasoby niezarządzane używane przez element Component i opcjonalnie zwalnia zasoby zarządzane.

(Odziedziczone po Component)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetDeleteCommand()

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonania usunięcia w źródle danych.

GetDeleteCommand(Boolean)

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonania usunięcia w źródle danych.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetInsertCommand()

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonywania wstawiania w źródle danych.

GetInsertCommand(Boolean)

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonywania wstawiania w źródle danych.

GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetParameterName(Int32)

Zwraca nazwę określonego parametru w formacie @p#. Użyj polecenia podczas tworzenia niestandardowego konstruktora poleceń.

(Odziedziczone po DbCommandBuilder)
GetParameterName(String)

Zwraca pełną nazwę parametru, przy użyciu częściowej nazwy parametru.

(Odziedziczone po DbCommandBuilder)
GetParameterPlaceholder(Int32)

Zwraca symbol zastępczy parametru w skojarzonej instrukcji SQL.

(Odziedziczone po DbCommandBuilder)
GetSchemaTable(DbCommand)

Zwraca tabelę schematu dla elementu DbCommandBuilder.

(Odziedziczone po DbCommandBuilder)
GetService(Type)

Zwraca obiekt reprezentujący usługę dostarczaną przez Component obiekt lub przez obiekt Container.

(Odziedziczone po Component)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
GetUpdateCommand()

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonywania aktualizacji w źródle danych.

GetUpdateCommand(Boolean)

Pobiera automatycznie wygenerowany OdbcCommand obiekt wymagany do wykonywania aktualizacji w źródle danych.

InitializeCommand(DbCommand)

Resetuje CommandTimeoutwłaściwości , Transaction, CommandTypei UpdateRowSource w elemecie DbCommand.

(Odziedziczone po DbCommandBuilder)
InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu.

(Odziedziczone po MarshalByRefObject)
QuoteIdentifier(String)

Biorąc pod uwagę niekwestionowany identyfikator w prawidłowym przypadku wykazu, zwraca poprawną postać cytowaną tego identyfikatora. Obejmuje to poprawne ucieczkę wszystkich osadzonych cudzysłowów w identyfikatorze.

QuoteIdentifier(String, OdbcConnection)

Biorąc pod uwagę niekwestionowany identyfikator w prawidłowym przypadku wykazu, zwraca poprawną postać cytowaną tego identyfikatora. Obejmuje to poprawne ucieczkę wszystkich osadzonych cudzysłowów w identyfikatorze.

RefreshSchema()

Czyści polecenia skojarzone z tym OdbcCommandBuilderelementem .

RefreshSchema()

Czyści polecenia skojarzone z tym DbCommandBuilderelementem .

(Odziedziczone po DbCommandBuilder)
RowUpdatingHandler(RowUpdatingEventArgs)

Dodaje procedurę obsługi zdarzeń RowUpdating dla zdarzenia.

(Odziedziczone po DbCommandBuilder)
SetRowUpdatingHandler(DbDataAdapter)

Rejestruje element DbCommandBuilder w celu obsługi RowUpdating zdarzenia dla .DbDataAdapter

(Odziedziczone po DbCommandBuilder)
ToString()

Zwraca wartość String zawierającą nazwę Componentobiektu , jeśli istnieje. Ta metoda nie powinna być zastępowana.

(Odziedziczone po Component)
UnquoteIdentifier(String)

Biorąc pod uwagę identyfikator cytowany, zwraca prawidłową niekwestionowaną formę tego identyfikatora, w tym poprawnie odpakowywanie wszystkich osadzonych cudzysłowów w identyfikatorze.

UnquoteIdentifier(String, OdbcConnection)

Biorąc pod uwagę identyfikator cytowany, zwraca prawidłową niekwestionowaną formę tego identyfikatora, w tym poprawnie odpakowywanie wszystkich osadzonych cudzysłowów w identyfikatorze.

Zdarzenia

Disposed

Występuje, gdy składnik jest usuwany przez wywołanie Dispose() metody .

(Odziedziczone po Component)

Dotyczy

Zobacz też