Sdílet prostřednictvím


SqlDataAdapter Třída

Definice

Představuje sadu datových příkazů a databázové připojení, které slouží k vyplnění DataSet a aktualizaci databáze SQL Serveru. Tuto třídu nelze zdě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 sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
type SqlDataAdapter = class
    inherit DbDataAdapter
    interface IDbDataAdapter
    interface IDataAdapter
    interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
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 vybranými řádky. Vyplněný DataSet se pak vrátí. K tomu se metoda předá inicializovanému DataSet, připojovacímu řetězci a řetězci dotazu, který je Transact-SQL příkazu SELECT.

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 a DataSet SQL Serverem pro načítání a ukládání dat. Tento SqlDataAdapter most poskytuje mapováním Fill, které změní data ve DataSet zdroji dat tak, aby odpovídala datům ve zdroji dat, a Updatekteré změní data ve zdroji dat tak, aby odpovídaly datům v objektu DataSet, pomocí příslušných příkazů Transact-SQL proti zdroji dat. Aktualizace se provádí po řádech. Pro každý vložený, změněný a odstraněný řádek určuje Update metoda typ změny, která byla provedena s ním (Insert, Updatenebo Delete). V závislosti na typu změny Insertse šablona příkazu nebo UpdateDelete , která rozšíří upravený řádek do zdroje dat. SqlDataAdapter Když vyplní , DataSetvytvoří 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 není vlastnost nastavena na AddWithKey. Před vyplněním dat FillSchemamůžete také vytvořit SqlDataAdapter schéma objektu DataSet, včetně informací o primárním klíči. Další informace naleznete v tématu Přidání existujících omezení do datové sady.

SqlDataAdapter se používá ve spojení s SqlConnection databází SQL Serveru a SqlCommand ke zvýšení výkonu.

Poznámka:

Pokud k úpravě nebo odstranění dat používáte uložené procedury SQL Serveru, DataAdapterujistěte se, že v definici uložené procedury nepoužíváte funkci SET NOCOUNT ON. To způsobí, že počet ovlivněných řádků bude nulový, což DataAdapter interpretuje jako konflikt souběžnosti. V tomto případě se dojde k vyvolání DBConcurrencyException.

Zahrnuje SqlDataAdapter také SelectCommandvlastnosti , , InsertCommand, DeleteCommandUpdateCommanda TableMappings vlastnosti pro usnadnění načítání a aktualizace dat.

Při vytvoření instance 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é jsou automaticky vyplněny jednotlivé hodnoty z každého upraveného řádku prostřednictvím mechanismu parametrů.

Pro každý sloupec, který rozšíříte do zdroje dat, Updateby měl být parametr přidán do InsertCommandUpdateCommand, nebo DeleteCommand. SourceColumn Vlastnost objektu DbParameter by měla být nastavena na název sloupce. Toto nastavení označuje, že hodnota parametru není nastavena ručně, ale přebírá se 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 naleznete v tématu CLR User-Defined Types.

Konstruktory

Name Description
SqlDataAdapter()

Inicializuje novou instanci SqlDataAdapter třídy.

SqlDataAdapter(SqlCommand)

Inicializuje novou instanci SqlDataAdapter třídy se zadaným SqlCommand jako SelectCommand vlastnost.

SqlDataAdapter(String, SqlConnection)

Inicializuje novou instanci SqlDataAdapter třídy pomocí SelectCommand a objektu SqlConnection .

SqlDataAdapter(String, String)

Inicializuje novou instanci SqlDataAdapter třídy pomocí SelectCommand připojovacího řetězce a připojovacího řetězce.

Pole

Name Description
DefaultSourceTableName

Výchozí název používaný objektem DataAdapter pro mapování tabulek.

(Zděděno od DbDataAdapter)

Vlastnosti

Name Description
AcceptChangesDuringFill

Získá nebo nastaví hodnotu označující, zda AcceptChanges() je volá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 během Update(DataSet).

(Zděděno od DataAdapter)
CanRaiseEvents

Získá hodnotu určující, zda komponenta může vyvolat událost.

(Zděděno od Component)
Container

Získá ten 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í příkaz Transact-SQL nebo uloženou proceduru pro odstranění záznamů ze sady dat.

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)
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, když existující DataSet schéma neodpovídá příchozím datům.

(Zděděno od DataAdapter)
ReturnProviderSpecificTypes

Získá nebo nastaví, zda Fill metoda má vrátit hodnoty specifické pro zprostředkovatele nebo běžné hodnoty kompatibilní se specifikací CLS.

(Zděděno od DataAdapter)
SelectCommand

Získá nebo nastaví Transact-SQL příkaz nebo uloženou proceduru použitou k výběru záznamů ve zdroji dat.

Site

Získá nebo nastaví ISite .Component

(Zděděno od Component)
TableMappings

Získá kolekci, která poskytuje primární mapování mezi zdrojovou tabulkou a .DataTable

(Zděděno od DataAdapter)
UpdateBatchSize

Získá nebo nastaví počet řádků, které jsou zpracovány v každé odezvě na server.

UpdateCommand

Získá nebo nastaví Transact-SQL příkaz nebo uloženou proceduru použitou k aktualizaci záznamů ve zdroji dat.

Metody

Name Description
AddToBatch(IDbCommand)

IDbCommand Přidá do aktuální dávky.

(Zděděno od DbDataAdapter)
ClearBatch()

Odebere všechny IDbCommand objekty z dávky.

(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 serveru sloužícího 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ří novou 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é DbDataAdapter a volitelně uvolní spravované prostředky.

(Zděděno od DbDataAdapter)
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
ExecuteBatch()

Spustí aktuální dávku.

(Zděděno od DbDataAdapter)
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

Přidá nebo aktualizuje řádky v zadané oblasti tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí DataSet názvů a názvů zdrojových tabulek, příkazového řetězce a chování příkazů.

(Zděděno od DbDataAdapter)
Fill(DataSet, Int32, Int32, String)

Přidá nebo aktualizuje řádky v zadané oblasti tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí názvů DataSet a DataTable názvů.

(Zděděno od DbDataAdapter)
Fill(DataSet, String, IDataReader, Int32, Int32)

Přidá nebo aktualizuje řádky v zadané oblasti takDataSet, aby odpovídaly řádkům ve zdroji dat pomocí , DataSetDataTablea IDataReader názvů.

(Zděděno od DbDataAdapter)
Fill(DataSet, String)

Přidá nebo aktualizuje řádky tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí názvů DataSet a DataTable názvů.

(Zděděno od DbDataAdapter)
Fill(DataSet)

Přidá nebo aktualizuje řádky v sadě DataSet.

(Zděděno od DbDataAdapter)
Fill(DataTable, IDataReader)

Přidá nebo aktualizuje řádky tak DataTable , aby odpovídaly řádkům ve zdroji dat pomocí zadaných DataTable a IDataReader názvů.

(Zděděno od DbDataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

Přidá nebo aktualizuje řádky takDataTable, aby odpovídaly řádkům ve zdroji dat pomocí zadaného IDbCommandDataTablea CommandBehavior.

(Zděděno od DbDataAdapter)
Fill(DataTable)

Přidá nebo aktualizuje řádky v zadané oblasti tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí DataTable názvu.

(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 tak DataSet , aby odpovídaly řádkům ve zdroji dat pomocí názvů DataSet a DataTable názvů.

(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čítáním až do zadaného maximálního počtu záznamů.

(Zděděno od DbDataAdapter)
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

DataTable Přidá do zadaného 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, IDataReader)

DataTable Přidá do zadaného DataSetparametru .

(Zděděno od DataAdapter)
FillSchema(DataSet, SchemaType, String)

DataTable Přidá do zadaného DataSet a nakonfiguruje schéma tak, aby odpovídalo schématu ve zdroji dat na základě zadaného SchemaType a DataTable.

(Zděděno od DbDataAdapter)
FillSchema(DataSet, SchemaType)

Přidá do zadaného pole pojmenovanou DataTable tabulku a nakonfiguruje schéma tak, aby odpovídalo schématu ve zdroji dat na základě zadaného SchemaType.DataSet

(Zděděno od DbDataAdapter)
FillSchema(DataTable, SchemaType, IDataReader)

DataTable Přidá do zadaného DataSetparametru .

(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)
FillSchema(DataTable, SchemaType)

Konfiguruje schéma zadaného DataTable na základě zadaného SchemaType.

(Zděděno od DbDataAdapter)
GetBatchedParameter(Int32, Int32)

IDataParameter Vrátí 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 provádění příkazu SQL SELECT.

(Zděděno od DbDataAdapter)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte objekt služby aktuální životnosti, 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 jeho Container.

(Zděděno od Component)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
HasTableMappings()

Určuje, zda DataTableMappingCollection byl vytvořen.

(Zděděno od DataAdapter)
InitializeBatching()

Inicializuje dávkování pro DbDataAdapter.

(Zděděno od DbDataAdapter)
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)
OnFillError(FillErrorEventArgs)

FillError Vyvolá událost.

(Zděděno od DbDataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

RowUpdated Vyvolá událost zprostředkovatele dat .NET.

(Zděděno od DbDataAdapter)
OnRowUpdating(RowUpdatingEventArgs)

RowUpdating Vyvolá událost zprostředkovatele dat .NET.

(Zděděno od DbDataAdapter)
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 jeden nebo více DataTableMapping objektů existuje a mají být zachovány.

(Zděděno od DataAdapter)
TerminateBatching()

Končí dávkování pro DbDataAdapter.

(Zděděno od DbDataAdapter)
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)
Update(DataRow[], DataTableMapping)

Aktualizuje 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(DataRow[])

Aktualizuje 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 DataSetpoli .

(Zděděno od DbDataAdapter)
Update(DataSet, String)

Aktualizuje 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 DataSet zadaném DataTable názvu.

(Zděděno od DbDataAdapter)
Update(DataSet)

Aktualizuje 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 DataSetřádku .

(Zděděno od DbDataAdapter)
Update(DataTable)

Aktualizuje 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 DataTableřádku .

(Zděděno od DbDataAdapter)

Událost

Name Description
Disposed

Nastane, když komponenta je uvolněna voláním Dispose() metody.

(Zděděno od Component)
FillError

Vráceno, když během operace vyplnění dojde k chybě.

(Zděděno od DbDataAdapter)
RowUpdated

Nastane během Update(DataSet) po provedení příkazu proti zdroji dat. Provede se pokus o aktualizaci, takže se událost aktivuje.

RowUpdating

Nastane během Update(DataSet) před spuštěním příkazu ve zdroji dat. Provede se pokus o aktualizaci, takže se událost aktivuje.

Explicitní implementace rozhraní

Name Description
ICloneable.Clone()

Popis tohoto člena naleznete 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 naleznete v tématu DeleteCommand.

IDbDataAdapter.InsertCommand

Popis tohoto člena naleznete v tématu InsertCommand.

IDbDataAdapter.SelectCommand

Popis tohoto člena naleznete v tématu SelectCommand.

IDbDataAdapter.UpdateCommand

Popis tohoto člena naleznete v tématu UpdateCommand.

Platí pro

Viz také