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 nebo aktualizovány v souboru DataSet. Nezahrnuje řádky ovlivněné příkazy, které nevrací řá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 je připojení před zavolání zavřené Fill , otevře se pro načtení dat a zavře se. Pokud je připojení otevřené před Fill zavolání, zůstane otevřené.
Operace Fill pak přidá řádky do cílových DataTable objektů v DataSetobjektu , vytváření DataTable objektů, pokud ještě neexistují. Při vytváření DataTable objektů Fill operace obvykle vytváří pouze metadata názvu sloupce. Pokud je však MissingSchemaAction vlastnost nastavena na AddWithKey, jsou vytvořeny také příslušné primární klíče a omezení.
Pokud SelectCommand vrátí výsledky vnějšího spojení, DataAdapter nenastaví hodnotu PrimaryKey pro výsledný DataTable. Musíte explicitně definovat primární klíč, aby se zajistilo, že se správně přeloží duplicitní řádky. Další informace naleznete v tématu Definování primárních klíčů.
IDataAdapter Pokud dojde k duplicitním sloupcům při naplnění DataTable, vygeneruje názvy po sobě jdoucích sloupců pomocí vzoru "columnname1", "columnname2", "columnname3" atd. Pokud příchozí data obsahují nepojmenované sloupce, vloží se do DataSet vzoru Column1, Column2 atd. Při přidání více sad výsledků do DataSettéto sady výsledků se každá sada výsledků vloží do samostatné tabulky. Další sady výsledků jsou pojmenovány 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žití názvů sloupců a tabulek používat upozornění, aby se zajistilo, že nedojde 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 některý z výsledků obsahuje chybu, všechny následné výsledky se přeskočí a nepřidají 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 k němu DataTablepříchozí řádky .
Poznámka:
Při zpracování dávkových příkazů SQL, které vracejí více výsledků, načte implementace Fill a FillSchema pro zprostředkovatele dat rozhraní .NET Framework informace o schématu pouze pro první výsledek.