SqlCommandBuilder Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Automatikusan létrehoz egytáblás parancsokat, amelyek a DataSet módosításainak egyeztetésére szolgálnak a társított SQL Server adatbázissal. Ez az osztály nem örökölhető.
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
- Öröklődés
- Öröklődés
Példák
Az alábbi példa a sorok adatforrásból való kiválasztására használja a SqlCommandmentén SqlDataAdapter és SqlConnectiona mellette lévő elemet. A példa egy kapcsolati karakterlánc, egy Transact-SQL SELECT utasítást tartalmazó lekérdezési sztring, valamint egy olyan sztring, amely az adatbázistábla neve. A példa ezután létrehoz egy 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
Megjegyzések
A SqlDataAdapter nem hozza létre automatikusan a DataSet módosításainak és a SQL Server társított példányának egyeztetéséhez szükséges Transact-SQL utasításokat. Létrehozhat azonban egy SqlCommandBuilder objektumot, amely automatikusan létrehoz Transact-SQL utasításokat az egytáblás frissítésekhez, ha beállítja a SelectCommandSqlDataAdapter tulajdonságát. Ezután a nem beállított további Transact-SQL utasításokat a SqlCommandBuilder hozza létre.
A SqlCommandBuilder tulajdonság beállításakor a rendszer figyelőként regisztrálja magát az RowUpdating eseményekhezDataAdapter. Egyszerre csak egyet SqlDataAdapter vagy SqlCommandBuilder objektumot társíthat egymáshoz.
AZ INSERT, UPDATE vagy DELETE utasítások létrehozásához a SqlCommandBuilderSelectCommand tulajdonság használatával automatikusan lekéri a szükséges metaadatokat. Ha módosítja a SelectCommand metaadatok lekérése után( például az első frissítés után), hívja meg a RefreshSchema metódust a metaadatok frissítéséhez.
A SelectCommand kulcsnak legalább egy elsődleges kulcsot vagy egyedi oszlopot is vissza kell adnia. Ha nincs jelen, érvénytelenműködtetési kivétel jön létre, és a parancsok nem jönnek létre.
Az SqlCommandBuilder is használja a Connection, CommandTimeoutés Transaction a tulajdonságok által SelectCommandhivatkozott. A felhasználónak fel kell hívnia RefreshSchema , ha egy vagy több tulajdonság módosult, vagy ha a SelectCommand rendszer lecserélte magát. Ellenkező esetben a InsertCommand, UpdateCommandés DeleteCommand a tulajdonságok megőrzik a korábbi értékeket.
Ha meghívja Dispose, a rendszer nem társítja a SqlCommandBuilder parancsot, SqlDataAdapterés a generált parancsok már nem lesznek használatban.
Konstruktorok
| Name | Description |
|---|---|
| SqlCommandBuilder() |
Inicializálja a SqlCommandBuilder osztály új példányát. |
| SqlCommandBuilder(SqlDataAdapter) |
Inicializálja az osztály új példányát SqlCommandBuilder a társított objektummal SqlDataAdapter . |
Tulajdonságok
| Name | Description |
|---|---|
| CanRaiseEvents |
Beolvas egy értéket, amely jelzi, hogy az összetevő képes-e eseményt létrehozni. (Öröklődés forrása Component) |
| CatalogLocation |
Lekéri vagy beállítja az CatalogLocation osztály egy példányát SqlCommandBuilder . |
| CatalogSeparator |
Lekéri vagy beállítja az osztály egy példányának katalóguselválasztójaként használt sztringet SqlCommandBuilder . |
| ConflictOption |
Megadja, hogy melyiket ConflictOption használja a DbCommandBuilderrendszer. (Öröklődés forrása DbCommandBuilder) |
| Container |
Lekéri a IContainer .Component (Öröklődés forrása Component) |
| DataAdapter |
Lekéri vagy beállít egy SqlDataAdapter objektumot, amelyhez a Transact-SQL utasítások automatikusan létrejönnek. |
| DesignMode |
Olyan értéket kap, amely jelzi, hogy az Component aktuálisan tervezési módban van-e. (Öröklődés forrása Component) |
| Events |
Lekéri az ehhez Componentcsatolt eseménykezelők listáját. (Öröklődés forrása Component) |
| QuotePrefix |
Lekéri vagy beállítja azokat a kezdő karaktert vagy karaktereket, amelyek SQL Server adatbázis-objektumok, például táblák vagy oszlopok megadásakor használhatók, amelyek neve olyan karaktereket tartalmaz, mint a szóközök vagy a fenntartott jogkivonatok. |
| QuoteSuffix |
Lekéri vagy beállítja azokat a záró karaktereket vagy karaktereket, amelyek SQL Server adatbázis-objektumok, például táblák vagy oszlopok megadásakor használhatók, amelyek neve olyan karaktereket tartalmaz, mint a szóközök vagy a fenntartott jogkivonatok. |
| SchemaSeparator |
Lekéri vagy beállítja az elválasztó karaktert a sémaazonosító és bármely más azonosító között. |
| SetAllValues |
Megadja, hogy a frissítési utasításban szereplő összes oszlopérték szerepel-e benne, vagy csak módosítva. (Öröklődés forrása DbCommandBuilder) |
| Site |
Lekéri vagy megadja a ISite értékét a Component-hez. (Öröklődés forrása Component) |
Metódusok
| Name | Description |
|---|---|
| ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean) |
Lehetővé teszi az osztály szolgáltatói implementációjának DbCommandBuilder további paramétertulajdonságok kezelését. (Öröklődés forrása DbCommandBuilder) |
| CreateObjRef(Type) |
Létrehoz egy objektumot, amely tartalmazza a távoli objektumokkal való kommunikációhoz használt proxy létrehozásához szükséges összes releváns információt. (Öröklődés forrása MarshalByRefObject) |
| DeriveParameters(SqlCommand) |
Lekéri a paraméteradatokat a megadott SqlCommand tárolt eljárásból, és feltölti a Parameters megadott SqlCommand objektum gyűjteményét. |
| Dispose() |
Felszabadítja a .-hez használt összes erőforrást Component. (Öröklődés forrása Component) |
| Dispose(Boolean) |
Felszabadítja a felügyelt erőforrások által Component használt nem felügyelt erőforrásokat, és opcionálisan felszabadítja a felügyelt erőforrásokat. (Öröklődés forrása Component) |
| Dispose(Boolean) |
Felszabadítja a felügyelt erőforrások által DbCommandBuilder használt nem felügyelt erőforrásokat, és opcionálisan felszabadítja a felügyelt erőforrásokat. (Öröklődés forrása DbCommandBuilder) |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetDeleteCommand() |
Lekéri az adatbázis törléséhez szükséges automatikusan létrehozott SqlCommand objektumot. |
| GetDeleteCommand(Boolean) |
Lekéri az adatbázis törléséhez szükséges automatikusan létrehozott SqlCommand objektumot. |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetInsertCommand() |
Lekéri az adatbázis beszúrásához szükséges automatikusan létrehozott SqlCommand objektumot. |
| GetInsertCommand(Boolean) |
Lekéri az adatbázis beszúrásához szükséges automatikusan létrehozott SqlCommand objektumot. |
| GetLifetimeService() |
Elavult.
Lekéri a példány élettartamszabályzatát vezérlő aktuális élettartam-szolgáltatásobjektumot. (Öröklődés forrása MarshalByRefObject) |
| GetParameterName(Int32) |
A megadott paraméter nevét adja vissza a következő formátumban |
| GetParameterName(String) |
A teljes paraméternevet adja vissza a részleges paraméternév alapján. (Öröklődés forrása DbCommandBuilder) |
| GetParameterPlaceholder(Int32) |
A paraméter helyőrzőjének értékét adja vissza a társított SQL-utasításban. (Öröklődés forrása DbCommandBuilder) |
| GetSchemaTable(DbCommand) |
A sématábláját adja vissza.DbCommandBuilder (Öröklődés forrása DbCommandBuilder) |
| GetService(Type) |
Olyan objektumot ad vissza, amely az általa vagy annak által ComponentContainernyújtott szolgáltatást jelöli. (Öröklődés forrása Component) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| GetUpdateCommand() |
Lekéri az adatbázis frissítéséhez szükséges automatikusan létrehozott SqlCommand objektumot. |
| GetUpdateCommand(Boolean) |
Lekéri az adatbázis frissítéséhez szükséges automatikusan létrehozott SqlCommand objektumot. |
| InitializeCommand(DbCommand) |
Alaphelyzetbe állítja a CommandTimeout, Transaction, CommandTypeés UpdateRowSource tulajdonságokat a DbCommand. (Öröklődés forrása DbCommandBuilder) |
| InitializeLifetimeService() |
Elavult.
Beolvas egy élettartam-szolgáltatásobjektumot a példány élettartam-szabályzatának szabályozásához. (Öröklődés forrása MarshalByRefObject) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| MemberwiseClone(Boolean) |
Az aktuális MarshalByRefObject objektum sekély másolatát hozza létre. (Öröklődés forrása MarshalByRefObject) |
| QuoteIdentifier(String) |
Ha a katalógus helyes esetében nem kvótált azonosítót ad vissza, az azonosító helyes idézett formáját adja vissza. Ez magában foglalja az azonosítóban lévő beágyazott idézőjelek helyes menekülését. |
| RefreshSchema() |
Törli a parancsszerkesztőhöz társított parancsokat. |
| RefreshSchema() |
Törli az ezzel DbCommandBuildera paranccsal társított parancsokat. (Öröklődés forrása DbCommandBuilder) |
| RowUpdatingHandler(RowUpdatingEventArgs) |
Hozzáad egy eseménykezelőt az RowUpdating eseményhez. (Öröklődés forrása DbCommandBuilder) |
| SetRowUpdatingHandler(DbDataAdapter) |
Regisztrálja az DbCommandBuilder esemény kezeléséhez RowUpdating egy DbDataAdapter. (Öröklődés forrása DbCommandBuilder) |
| ToString() |
String A ( ha van) nevet tartalmazó értéket Componentad vissza. Ezt a módszert nem szabad felülírni. (Öröklődés forrása Component) |
| UnquoteIdentifier(String) |
Idézett azonosító esetén az azonosító helyes, nem kvótált formáját adja vissza. Ez magában foglalja az azonosítóban lévő beágyazott idézőjelek helyes feloldását. |
esemény
| Name | Description |
|---|---|
| Disposed |
Akkor fordul elő, ha az összetevőt a metódus hívása megsemmisíti Dispose() . (Öröklődés forrása Component) |