SqlDataAdapter 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í.
Představuje sadu datových příkazů a připojení k databázi, které se používají k vyplnění DataSet a aktualizaci SQL Server databáze. Tato třída se nemůže dědit.
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter
type SqlDataAdapter = class
inherit DbDataAdapter
interface IDbDataAdapter
interface IDataAdapter
interface ICloneable
type SqlDataAdapter = class
inherit DbDataAdapter
interface IDataAdapter
interface IDbDataAdapter
interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
- Dědičnost
- Implementuje
Příklady
Následující příklad používá SqlCommand, SqlDataAdaptera SqlConnection k výběru záznamů z databáze a naplnění DataSet objektu vybranými řádky. Vyplněná DataSet hodnota se pak vrátí. K tomu je metoda předána inicializovaný DataSet, připojovací řetězec a řetězec dotazu, který je příkazEm SELECT jazyka Transact-SQL.
private static DataSet SelectRows(DataSet dataset,
string connectionString,string queryString)
{
using (SqlConnection connection =
new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(
queryString, connection);
adapter.Fill(dataset);
return dataset;
}
}
Public Function SelectRows( _
ByVal dataSet As DataSet, ByVal connectionString As String, _
ByVal queryString As String) As DataSet
Using connection As New SqlConnection(connectionString)
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = New SqlCommand( _
queryString, connection)
adapter.Fill(dataSet)
Return dataSet
End Using
End Function
Poznámky
Slouží SqlDataAdapterjako most mezi DataSet a SQL Server pro načítání a ukládání dat. Poskytuje SqlDataAdapter tento most mapováním Fill, které změní data v DataSet souboru tak, aby odpovídala datům ve zdroji dat, a Update, které změní data ve zdroji dat tak, aby odpovídala datům v DataSet, pomocí příslušných příkazů Jazyka Transact-SQL vůči zdroji dat. Aktualizace se provádí po řádcích. Pro každý vložený, upravený a odstraněný řádek Update určuje metoda typ změny, která byla na řádku provedena (Insert
, Update
nebo Delete
). V závislosti na typu změny Insert
se šablona příkazu , Update
nebo Delete
spustí, aby se upravený řádek rozšířil do zdroje dat. Když vyplní SqlDataAdapterDataSet, vytvoří potřebné tabulky a sloupce pro vrácená data, pokud ještě neexistují. Informace o primárním klíči však nejsou zahrnuty do implicitně vytvořeného schématu, pokud MissingSchemaAction vlastnost není nastavena na AddWithKeyhodnotu . Před vyplněním dat pomocí FillSchema
můžete také SqlDataAdapter vytvořit schéma DataSet, včetně informací o primárním klíči. Další informace najdete v tématu Přidání existujících omezení do datové sady.
SqlDataAdapterse používá ve spojení s SqlConnection a SqlCommand ke zvýšení výkonu při připojování k databázi SQL Server.
Poznámka
Pokud používáte SQL Server uložené procedury k úpravě nebo odstranění dat pomocí DataAdapter
, ujistěte se, že v definici uložené procedury nepoužíváte SET NOCOUNT ON. To způsobí, že počet ovlivněných řádků se vrátí na nulu, což DataAdapter
interpretuje jako konflikt souběžnosti. V takovém případě DBConcurrencyException bude vyvolán objekt .
Obsahuje SqlDataAdapterSelectCommandtaké vlastnosti , InsertCommand, DeleteCommand, UpdateCommanda TableMappings pro usnadnění načítání a aktualizace dat.
Při vytvoření instance objektu SqlDataAdapter jsou vlastnosti pro čtení a zápis nastaveny na počáteční hodnoty. Seznam těchto hodnot naleznete v konstruktoru SqlDataAdapter .
, InsertCommandDeleteCommanda UpdateCommand jsou obecné šablony, které se automaticky vyplní jednotlivými hodnotami z každého upraveného řádku prostřednictvím mechanismu parametrů.
Pro každý sloupec, který rozšíříte do zdroje dat v Update, by měl být do , UpdateCommand
nebo DeleteCommand
přidán InsertCommand
parametr . Vlastnost SourceColumn objektu DbParameter by měla být nastavena na název sloupce. Toto nastavení označuje, že hodnota parametru není nastavena ručně, ale je převzata z konkrétního sloupce v aktuálně zpracovaném řádku.
Poznámka
K InvalidOperationException chybě dojde, Fill pokud je volána metoda a tabulka obsahuje uživatelem definovaný typ, který není k dispozici v klientském počítači. Další informace najdete v tématu Typy User-Defined CLR.
Konstruktory
SqlDataAdapter() |
Inicializuje novou instanci SqlDataAdapter třídy . |
SqlDataAdapter(SqlCommand) |
Inicializuje novou instanci SqlDataAdapter třídy se zadanou SqlCommand jako SelectCommand vlastnost . |
SqlDataAdapter(String, SqlConnection) |
Inicializuje novou instanci SqlDataAdapter třídy s objektem SelectCommandSqlConnection a . |
SqlDataAdapter(String, String) |
Inicializuje novou instanci SqlDataAdapter třídy pomocí SelectCommand a připojovací řetězec. |
Pole
DefaultSourceTableName |
Výchozí název používaný objektem DataAdapter pro mapování tabulek. (Zděděno od DbDataAdapter) |
Vlastnosti
AcceptChangesDuringFill |
Získá nebo nastaví hodnotu označující, zda AcceptChanges() je volána na po DataRow přidání do DataTable během některé z operací Fill . (Zděděno od DataAdapter) |
AcceptChangesDuringUpdate |
Získá nebo nastaví, zda AcceptChanges() je volána Update(DataSet)během . (Zděděno od DataAdapter) |
CanRaiseEvents |
Získá hodnotu označující, zda komponenta může vyvolat událost. (Zděděno od Component) |
Container |
Získá objekt IContainer , který obsahuje Component. (Zděděno od Component) |
ContinueUpdateOnError |
Získá nebo nastaví hodnotu, která určuje, zda se má vygenerovat výjimka při výskytu chyby během aktualizace řádku. (Zděděno od DataAdapter) |
DeleteCommand |
Získá nebo nastaví Transact-SQL příkaz nebo uložená procedura odstranit záznamy z datové sady. |
DesignMode |
Získá hodnotu, která označuje, zda je aktuálně v režimu návrhu Component . (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) |
FillCommandBehavior |
Získá nebo nastaví chování příkazu použitého k vyplnění datového adaptéru. (Zděděno od DbDataAdapter) |
FillLoadOption |
Získá nebo nastaví , LoadOption který určuje, jak adaptér vyplní DataTable z DbDataReader. (Zděděno od DataAdapter) |
InsertCommand |
Získá nebo nastaví Transact-SQL příkaz nebo uložená procedura pro vložení nových záznamů do zdroje dat. |
MissingMappingAction |
Určuje akci, která se má provést, když příchozí data nemají odpovídající tabulku nebo sloupec. (Zděděno od DataAdapter) |
MissingSchemaAction |
Určuje akci, která se má provést, pokud existující DataSet schéma neodpovídá příchozím datům. (Zděděno od DataAdapter) |
ReturnProviderSpecificTypes |
Získá nebo nastaví, zda |
SelectCommand |
Získá nebo nastaví Transact-SQL příkaz nebo uložená procedura slouží k výběru záznamů ve zdroji dat. |
Site |
Získá nebo nastaví ISite z Component. (Zděděno od Component) |
TableMappings |
Získá kolekci, která poskytuje primární mapování mezi zdrojovou tabulkou DataTablea . (Zděděno od DataAdapter) |
UpdateBatchSize |
Získá nebo nastaví počet řádků, které jsou zpracovány v každém odezvě na server. |
UpdateBatchSize |
Získá nebo nastaví hodnotu, která povolí nebo zakáže podporu dávkového zpracování a určuje počet příkazů, které lze spustit v dávce. (Zděděno od DbDataAdapter) |
UpdateCommand |
Získá nebo nastaví Transact-SQL příkaz nebo uložená procedura slouží k aktualizaci záznamů ve zdroji dat. |
Metody
AddToBatch(IDbCommand) |
Přidá do IDbCommand aktuální dávky . (Zděděno od DbDataAdapter) |
ClearBatch() |
Odebere z dávky všechny IDbCommand objekty. (Zděděno od DbDataAdapter) |
CloneInternals() |
Zastaralé.
Zastaralé.
Zastaralé.
Zastaralé.
Vytvoří kopii této instance .DataAdapter (Zděděno od DataAdapter) |
CreateObjRef(Type) |
Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy sloužící ke komunikaci se vzdáleným objektem. (Zděděno od MarshalByRefObject) |
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping) |
Inicializuje novou instanci RowUpdatedEventArgs třídy . (Zděděno od DbDataAdapter) |
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping) |
Inicializuje novou instanci RowUpdatingEventArgs třídy . (Zděděno od DbDataAdapter) |
CreateTableMappings() |
Vytvoří nový objekt DataTableMappingCollection. (Zděděno od DataAdapter) |
Dispose() |
Uvolní všechny prostředky používané nástrojem Component. (Zděděno od Component) |
Dispose(Boolean) |
Uvolní nespravované prostředky používané nástrojem DbDataAdapter a volitelně uvolní spravované prostředky. (Zděděno od DbDataAdapter) |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
ExecuteBatch() |
Spustí aktuální dávku. (Zděděno od DbDataAdapter) |
Fill(DataSet) |
Přidá nebo aktualizuje řádky v objektu DataSet. (Zděděno od DbDataAdapter) |
Fill(DataSet, Int32, Int32, String) |
Přidá nebo aktualizuje řádky v zadané oblasti v objektu , DataSet aby odpovídaly řádkům ve zdroji dat pomocí DataSet názvů a DataTable . (Zděděno od DbDataAdapter) |
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior) |
Přidá nebo aktualizuje řádky v zadané oblasti v objektu tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí DataSet názvů zdrojových tabulek a , řetězce příkazů a chování příkazu. (Zděděno od DbDataAdapter) |
Fill(DataSet, String) |
Přidá nebo aktualizuje řádky v objektu tak DataSet , aby odpovídaly řádkům ve zdroji DataSet dat pomocí názvů a DataTable . (Zděděno od DbDataAdapter) |
Fill(DataSet, String, IDataReader, Int32, Int32) |
Přidá nebo aktualizuje řádky v zadané oblasti v objektu tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí DataSetnázvů , DataTablea IDataReader . (Zděděno od DbDataAdapter) |
Fill(DataTable) |
Přidá nebo aktualizuje řádky v zadané oblasti v objektu tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí názvu DataTable . (Zděděno od DbDataAdapter) |
Fill(DataTable, IDataReader) |
Přidá nebo aktualizuje řádky v objektu tak DataTable , aby odpovídaly řádkům ve zdroji dat pomocí zadaných DataTable názvů a IDataReader . (Zděděno od DbDataAdapter) |
Fill(DataTable, IDbCommand, CommandBehavior) |
Přidá nebo aktualizuje řádky v objektu tak DataTable , aby odpovídaly řádkům ve zdroji dat pomocí zadaných DataTablehodnot , IDbCommand a CommandBehavior. (Zděděno od DbDataAdapter) |
Fill(DataTable[], IDataReader, Int32, Int32) |
Přidá nebo aktualizuje řádky v zadané oblasti v kolekci DataTable objektů tak, aby odpovídaly řádkům ve zdroji dat. (Zděděno od DataAdapter) |
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior) |
Přidá nebo aktualizuje řádky v zadané oblasti v objektu , DataSet aby odpovídaly řádkům ve zdroji dat pomocí DataSet názvů a DataTable . (Zděděno od DbDataAdapter) |
Fill(Int32, Int32, DataTable[]) |
Přidá nebo aktualizuje řádky v jednom nebo více DataTable objektech tak, aby odpovídaly řádkům ve zdroji dat počínaje zadaným záznamem a načtením až do zadaného maximálního počtu záznamů. (Zděděno od DbDataAdapter) |
FillSchema(DataSet, SchemaType) |
Přidá pojmenovanou DataTable "tabulku" k zadanému DataSet a nakonfiguruje schéma tak, aby odpovídalo schématu ve zdroji dat na základě zadaného SchemaType. (Zděděno od DbDataAdapter) |
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior) |
DataTable Přidá k zadanému DataSet a nakonfiguruje schéma tak, aby odpovídalo schématu ve zdroji dat na základě zadaného SchemaType. (Zděděno od DbDataAdapter) |
FillSchema(DataSet, SchemaType, String) |
DataTable Přidá k zadanému DataSet a nakonfiguruje schéma tak, aby odpovídalo schématu ve zdroji dat na základě zadaných SchemaType hodnot a DataTable. (Zděděno od DbDataAdapter) |
FillSchema(DataSet, SchemaType, String, IDataReader) |
Přidá do zadaného DataSetparametru DataTable . (Zděděno od DataAdapter) |
FillSchema(DataTable, SchemaType) |
Nakonfiguruje schéma zadaného DataTable na základě zadaného SchemaType. (Zděděno od DbDataAdapter) |
FillSchema(DataTable, SchemaType, IDataReader) |
Přidá do zadaného DataSetparametru DataTable . (Zděděno od DataAdapter) |
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior) |
Nakonfiguruje schéma zadaného DataTable na základě zadaného SchemaTypeřetězce příkazu a CommandBehavior hodnot. (Zděděno od DbDataAdapter) |
GetBatchedParameter(Int32, Int32) |
Vrátí hodnotu IDataParameter z jednoho z příkazů v aktuální dávce. (Zděděno od DbDataAdapter) |
GetBatchedRecordsAffected(Int32, Int32, Exception) |
Vrátí informace o jednotlivých pokusech o aktualizaci v rámci větší dávkové aktualizace. (Zděděno od DbDataAdapter) |
GetFillParameters() |
Získá parametry nastavené uživatelem při spuštění příkazu SQL SELECT. (Zděděno od DbDataAdapter) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetLifetimeService() |
Zastaralé.
Načte aktuální životnost objektu služby, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
GetService(Type) |
Vrátí objekt, který představuje službu poskytovanou objektem Component nebo .Container (Zděděno od Component) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
HasTableMappings() |
Označuje, jestli DataTableMappingCollection byl vytvořen objekt . (Zděděno od DataAdapter) |
InitializeBatching() |
Inicializuje dávkování pro DbDataAdapter. (Zděděno od DbDataAdapter) |
InitializeLifetimeService() |
Zastaralé.
Získá životnost objektu služby, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
MemberwiseClone(Boolean) |
Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu. (Zděděno od MarshalByRefObject) |
OnFillError(FillErrorEventArgs) |
FillError Vyvolá událost. (Zděděno od DbDataAdapter) |
OnRowUpdated(RowUpdatedEventArgs) |
|
OnRowUpdating(RowUpdatingEventArgs) |
|
ResetFillLoadOption() |
FillLoadOption Obnoví výchozí stav a způsobíFill(DataSet), že bude respektovat AcceptChangesDuringFill. (Zděděno od DataAdapter) |
ShouldSerializeAcceptChangesDuringFill() |
Určuje, zda AcceptChangesDuringFill má být vlastnost zachována. (Zděděno od DataAdapter) |
ShouldSerializeFillLoadOption() |
Určuje, zda FillLoadOption má být vlastnost zachována. (Zděděno od DataAdapter) |
ShouldSerializeTableMappings() |
Určuje, zda existuje jeden nebo více DataTableMapping objektů a měly by být zachovány. (Zděděno od DataAdapter) |
TerminateBatching() |
Ukončí dávkování pro DbDataAdapter. (Zděděno od DbDataAdapter) |
ToString() |
String Vrátí hodnotu obsahující název , Componentpokud existuje. Tato metoda by neměla být přepsána. (Zděděno od Component) |
Update(DataRow[]) |
Aktualizace hodnoty v databázi spuštěním příslušných příkazů INSERT, UPDATE nebo DELETE pro každý vložený, aktualizovaný nebo odstraněný řádek v zadaném poli v DataSet. (Zděděno od DbDataAdapter) |
Update(DataRow[], DataTableMapping) |
Aktualizace hodnoty v databázi spuštěním příslušných příkazů INSERT, UPDATE nebo DELETE pro každý vložený, aktualizovaný nebo odstraněný řádek v zadaném poli DataRow objektů. (Zděděno od DbDataAdapter) |
Update(DataSet) |
Aktualizace hodnoty v databázi spuštěním příslušných příkazů INSERT, UPDATE nebo DELETE pro každý vložený, aktualizovaný nebo odstraněný řádek v zadaném DataSetobjektu . (Zděděno od DbDataAdapter) |
Update(DataSet, String) |
Aktualizace hodnoty v databázi spuštěním příslušných příkazů INSERT, UPDATE nebo DELETE pro každý vložený, aktualizovaný nebo odstraněný řádek v objektu DataSet se zadaným DataTable názvem. (Zděděno od DbDataAdapter) |
Update(DataTable) |
Aktualizace hodnoty v databázi spuštěním příslušných příkazů INSERT, UPDATE nebo DELETE pro každý vložený, aktualizovaný nebo odstraněný řádek v zadaném DataTableobjektu . (Zděděno od DbDataAdapter) |
Událost
Disposed |
Vyvolá se, když je komponenta uvolněna voláním Dispose() metody . (Zděděno od Component) |
FillError |
Vrátí se, když během operace vyplnění dojde k chybě. (Zděděno od DbDataAdapter) |
RowUpdated |
Vyvolá se během Update(DataSet) po provedení příkazu proti zdroji dat. Pokus o aktualizaci se provede, takže se událost aktivuje. |
RowUpdating |
Vyskytuje se během Update(DataSet) před provedením příkazu proti zdroji dat. Pokus o aktualizaci se provede, takže se událost aktivuje. |
Explicitní implementace rozhraní
ICloneable.Clone() |
Popis tohoto člena najdete v tématu Clone(). |
IDataAdapter.TableMappings |
Získá kolekci, která označuje, jak je zdrojová tabulka mapována na tabulku datové sady. (Zděděno od DataAdapter) |
IDbDataAdapter.DeleteCommand |
Popis tohoto člena najdete v tématu DeleteCommand. |
IDbDataAdapter.InsertCommand |
Popis tohoto člena najdete v tématu InsertCommand. |
IDbDataAdapter.SelectCommand |
Popis tohoto člena najdete v tématu SelectCommand. |
IDbDataAdapter.UpdateCommand |
Popis tohoto člena najdete v tématu UpdateCommand. |