SqlCommandBuilder Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Automaticky vygeneruje příkazy s jednou tabulkou, které slouží k odsouhlasení změn provedených v DataSet přidružené databázi SQL Serveru. Tuto třídu nelze zdědit.
public ref class SqlCommandBuilder sealed : System::ComponentModel::Component
public ref class SqlCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public sealed class SqlCommandBuilder : System.ComponentModel.Component
public sealed class SqlCommandBuilder : System.Data.Common.DbCommandBuilder
type SqlCommandBuilder = class
inherit Component
type SqlCommandBuilder = class
inherit DbCommandBuilder
Public NotInheritable Class SqlCommandBuilder
Inherits Component
Public NotInheritable Class SqlCommandBuilder
Inherits DbCommandBuilder
- Dědičnost
- Dědičnost
Příklady
Následující příklad používá SqlCommandSqlDataAdapter k výběru řádků ze zdroje dat řádky spolu a SqlConnection. Příklad se předá připojovacímu řetězci, řetězci dotazu, který je Transact-SQL příkazu SELECT, a řetězec, který je názvem databázové tabulky. Příklad pak vytvoří .SqlCommandBuilder
public static DataSet SelectSqlRows(string connectionString,
string queryString, string tableName)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(queryString, connection);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
connection.Open();
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, tableName);
//code to modify data in DataSet here
builder.GetUpdateCommand();
//Without the SqlCommandBuilder this line would fail
adapter.Update(dataSet, tableName);
return dataSet;
}
}
Private Function SelectSqlRows(ByVal connectionString As String, _
ByVal queryString As String, ByVal tableName As String) As DataSet
Using connection As New SqlConnection(connectionString)
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = New SqlCommand(queryString, connection)
Dim builder As New SqlCommandBuilder(adapter)
connection.Open()
Dim dataSet As New DataSet()
adapter.Fill(dataSet, tableName)
' Code to modify data in DataSet here
builder.GetUpdateCommand()
' Without the SqlCommandBuilder this line would fail.
adapter.Update(dataSet, tableName)
Return dataSet
End Using
End Function
Poznámky
Negeneruje SqlDataAdapter automaticky příkazy Transact-SQL potřebné k odsouhlasení změn provedených DataSet u přidružené instance SQL Serveru. Můžete však vytvořit SqlCommandBuilder objekt, který automaticky vygeneruje příkazy Transact-SQL pro aktualizace s jednou tabulkou, pokud nastavíte SelectCommand vlastnost SqlDataAdapter. Pak všechny další Transact-SQL příkazy, které nenastavíte, jsou generovány SqlCommandBuilder.
Zaregistruje SqlCommandBuilder se jako naslouchací proces pro RowUpdating události při každém nastavení DataAdapter vlastnosti. K sobě můžete přidružit jenom jeden SqlDataAdapter objekt SqlCommandBuilder najednou.
Chcete-li vygenerovat příkazy INSERT, UPDATE nebo DELETE, SqlCommandBuilder použije SelectCommand vlastnost k automatickému načtení požadované sady metadat. Pokud změníte po SelectCommand načtení metadat, například po první aktualizaci, měli byste volat metodu RefreshSchema pro aktualizaci metadat.
SelectCommand musí také vrátit minimálně jeden primární klíč nebo jedinečný sloupec. Pokud žádné nejsou k dispozici, vygeneruje se výjimka InvalidOperation a příkazy se negenerují.
Také SqlCommandBuilder používá Connection, CommandTimeouta Transaction vlastnosti odkazované .SelectCommand Uživatel by měl volat RefreshSchema , pokud se změní jedna nebo více těchto vlastností, nebo pokud SelectCommand se sám nahradí. InsertCommand UpdateCommandV opačném případě , a DeleteCommand vlastnosti zachovat jejich předchozí hodnoty.
Pokud voláte Dispose, SqlCommandBuilder je přidružení od objektu SqlDataAdaptera vygenerované příkazy se už nepoužívají.
Konstruktory
| Name | Description |
|---|---|
| SqlCommandBuilder() |
Inicializuje novou instanci SqlCommandBuilder třídy. |
| SqlCommandBuilder(SqlDataAdapter) |
Inicializuje novou instanci SqlCommandBuilder třídy s přidruženým SqlDataAdapter objektem. |
Vlastnosti
| Name | Description |
|---|---|
| CanRaiseEvents |
Získá hodnotu určující, zda komponenta může vyvolat událost. (Zděděno od Component) |
| CatalogLocation |
Získá nebo nastaví CatalogLocation instanci SqlCommandBuilder třídy. |
| CatalogSeparator |
Získá nebo nastaví řetězec použitý jako oddělovač katalogu pro instanci SqlCommandBuilder třídy. |
| ConflictOption |
Určuje, který ConflictOption parametr má používat DbCommandBuilder. (Zděděno od DbCommandBuilder) |
| Container |
Získá ten IContainer , který obsahuje Component. (Zděděno od Component) |
| DataAdapter |
Získá nebo nastaví SqlDataAdapter objekt, pro který Transact-SQL příkazy jsou automaticky generovány. |
| DesignMode |
Získá hodnotu, která označuje, zda Component je aktuálně v režimu návrhu. (Zděděno od Component) |
| Events |
Získá seznam obslužných rutin událostí, které jsou připojeny k tomuto Component. (Zděděno od Component) |
| QuotePrefix |
Získá nebo nastaví počáteční znak nebo znaky, které se mají použít při zadávání databázových objektů SYSTÉMU SQL Server, jako jsou tabulky nebo sloupce, jejichž názvy obsahují znaky, jako jsou mezery nebo rezervované tokeny. |
| QuoteSuffix |
Získá nebo nastaví koncový znak nebo znaky, které se mají použít při zadávání databázových objektů SYSTÉMU SQL Server, jako jsou tabulky nebo sloupce, jejichž názvy obsahují znaky, jako jsou mezery nebo rezervované tokeny. |
| SchemaSeparator |
Získá nebo nastaví znak, který se má použít pro oddělovač mezi identifikátorem schématu a jinými identifikátory. |
| SetAllValues |
Určuje, zda jsou zahrnuty všechny hodnoty sloupců v příkazu update nebo pouze změněny. (Zděděno od DbCommandBuilder) |
| Site |
Získá nebo nastaví ISite .Component (Zděděno od Component) |
Metody
| Name | Description |
|---|---|
| ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean) |
Umožňuje implementaci DbCommandBuilder zprostředkovatele třídy zpracovat další vlastnosti parametru. (Zděděno od DbCommandBuilder) |
| CreateObjRef(Type) |
Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy serveru sloužícího ke komunikaci se vzdáleným objektem. (Zděděno od MarshalByRefObject) |
| DeriveParameters(SqlCommand) |
Načte informace o parametrech z uložené procedury zadané v SqlCommand kolekci zadaného objektu a naplní Parameters kolekci zadaného SqlCommand objektu. |
| Dispose() |
Uvolní všechny prostředky používané nástrojem Component. (Zděděno od Component) |
| Dispose(Boolean) |
Uvolní nespravované prostředky používané Component a volitelně uvolní spravované prostředky. (Zděděno od Component) |
| Dispose(Boolean) |
Uvolní nespravované prostředky používané DbCommandBuilder a volitelně uvolní spravované prostředky. (Zděděno od DbCommandBuilder) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetDeleteCommand() |
Získá automaticky vygenerovaný SqlCommand objekt potřebný k provedení odstranění v databázi. |
| GetDeleteCommand(Boolean) |
Získá automaticky vygenerovaný SqlCommand objekt, který je nutný k provedení odstranění v databázi. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetInsertCommand() |
Získá automaticky vygenerovaný SqlCommand objekt potřebný k provedení vložení do databáze. |
| GetInsertCommand(Boolean) |
Získá automaticky vygenerovaný SqlCommand objekt, který je nutný k provedení vložení do databáze. |
| GetLifetimeService() |
Zastaralé.
Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
| GetParameterName(Int32) |
Vrátí název zadaného parametru ve formátu |
| GetParameterName(String) |
Vrátí úplný název parametru vzhledem k částečnému názvu parametru. (Zděděno od DbCommandBuilder) |
| GetParameterPlaceholder(Int32) |
Vrátí zástupný symbol pro parametr v přidruženém příkazu SQL. (Zděděno od DbCommandBuilder) |
| GetSchemaTable(DbCommand) |
Vrátí tabulku schématu pro objekt DbCommandBuilder. (Zděděno od DbCommandBuilder) |
| GetService(Type) |
Vrátí objekt, který představuje službu poskytovanou objektem Component nebo jeho Container. (Zděděno od Component) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| GetUpdateCommand() |
Získá automaticky vygenerovaný SqlCommand objekt potřebný k provádění aktualizací v databázi. |
| GetUpdateCommand(Boolean) |
Získá automaticky vygenerovaný SqlCommand objekt potřebný k provádění aktualizací v databázi. |
| InitializeCommand(DbCommand) |
Obnoví hodnotu CommandTimeout, Transaction, CommandTypea UpdateRowSource vlastnosti v objektu DbCommand. (Zděděno od DbCommandBuilder) |
| InitializeLifetimeService() |
Zastaralé.
Získá objekt služby životnosti pro řízení zásad životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| MemberwiseClone(Boolean) |
Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu. (Zděděno od MarshalByRefObject) |
| QuoteIdentifier(String) |
Vzhledem k necitovanému identifikátoru ve správném případě katalogu vrátí správnou uvozovou formu tohoto identifikátoru. To zahrnuje správné zapouzdření všech vložených uvozovek v identifikátoru. |
| RefreshSchema() |
Vymaže příkazy přidružené k tomuto tvůrci příkazů. |
| RefreshSchema() |
Vymaže příkazy přidružené k tomuto DbCommandBuilderpříkazu . (Zděděno od DbCommandBuilder) |
| RowUpdatingHandler(RowUpdatingEventArgs) |
Přidá obslužnou rutinu RowUpdating události pro událost. (Zděděno od DbCommandBuilder) |
| SetRowUpdatingHandler(DbDataAdapter) |
Zaregistruje událost DbCommandBuilderRowUpdating pro DbDataAdapterzpracování události . (Zděděno od DbCommandBuilder) |
| ToString() |
String Vrátí hodnotu obsahující název Component, pokud existuje. Tato metoda by neměla být přepsána. (Zděděno od Component) |
| UnquoteIdentifier(String) |
Vzhledem k uvozovanému identifikátoru vrátí správnou necitovanou formu tohoto identifikátoru. To zahrnuje správné zrušení zapouzdření všech vložených uvozovek v identifikátoru. |
Událost
| Name | Description |
|---|---|
| Disposed |
Nastane, když komponenta je uvolněna voláním Dispose() metody. (Zděděno od Component) |