OdbcCommandBuilder Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
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 |
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) |