IDataAdapter.Fill(DataSet) Metoda
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í.
public:
int Fill(System::Data::DataSet ^ dataSet);
public int Fill (System.Data.DataSet dataSet);
abstract member Fill : System.Data.DataSet -> int
Public Function Fill (dataSet As DataSet) As Integer
Parametry
Návraty
Počet řádků, které byly úspěšně přidány do nebo aktualizovány v objektu DataSet. To nezahrnuje řádky ovlivněné příkazy, které nevracejí řádky.
Poznámky
Fill načte řádky ze zdroje dat pomocí příkazu SELECT určeného přidruženou SelectCommand vlastností. Objekt připojení přidružený k příkazu SELECT musí být platný, ale nemusí být otevřený. Pokud se připojení před Fill zavolání ukončí, otevře se za účelem načtení dat a pak se ukončí. Pokud je připojení před Fill zavolání otevřené, zůstane otevřené.
Operace Fill pak přidá řádky do cílových DataTable objektů v objektu DataSeta vytvoří DataTable objekty, pokud ještě neexistují. Při vytváření DataTable objektů Fill operace obvykle vytvoří pouze metadata názvu sloupce. Pokud je ale vlastnost nastavená MissingSchemaAction na AddWithKey
, vytvoří se také odpovídající primární klíče a omezení.
Pokud objekt SelectCommand
vrátí výsledky VNĚJŠÍHO SPOJENÍ, DataAdapter
nenastaví PrimaryKey hodnotu pro výsledný DataTableobjekt . Abyste zajistili správné překladu duplicitních řádků, musíte explicitně definovat primární klíč. Další informace najdete v tématu Definování primárních klíčů.
Pokud při IDataAdapter vyplňování DataTablenarazí na duplicitní sloupce, vygeneruje názvy pro následující sloupce pomocí vzoru "název_sloupce1", "název_sloupce2", "název_sloupce3" atd. Pokud příchozí data obsahují nepojmenované sloupce, zadají DataSet se do sloupce "Column1", "Column2" atd. Když se do DataSetpřidá více sad výsledků dotazu, každá sada výsledků dotazu se umístí do samostatné tabulky. Další sady výsledků se nazývají připojením integrálních hodnot k zadanému názvu tabulky (například "Tabulka", "Tabulka1", "Tabulka2" atd.). Aplikace by měly při používání názvů sloupců a tabulek postupovat opatrně, aby nedocházelo ke konfliktům s těmito vzory pojmenování.
Pokud příkaz SELECT, který se používá k naplnění DataSet , vrátí více výsledků, například dávkový příkaz SQL, pokud jeden z výsledků obsahuje chybu, všechny po sobě jdoucí výsledky se přeskočí a nepřidají se do DataSet.
Metodu Fill můžete použít vícekrát na stejném DataTable. Pokud existuje primární klíč, příchozí řádky se sloučí s odpovídajícími řádky, které už existují. Pokud neexistuje žádný primární klíč, připojí se příchozí řádky k objektu DataTable.
Poznámka
Při zpracování dávkových příkazů SQL, které vrací více výsledků, implementace Fill a FillSchema pro zprostředkovatele dat rozhraní .NET Framework načítá informace o schématu pouze pro první výsledek.