IDataAdapter.FillSchema(DataSet, SchemaType) 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í.
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.
public:
cli::array <System::Data::DataTable ^> ^ FillSchema(System::Data::DataSet ^ dataSet, System::Data::SchemaType schemaType);
public System.Data.DataTable[] FillSchema (System.Data.DataSet dataSet, System.Data.SchemaType schemaType);
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
Public Function FillSchema (dataSet As DataSet, schemaType As SchemaType) As DataTable()
Parametry
- schemaType
- SchemaType
Jedna z SchemaType hodnot.
Návraty
Pole DataTable objektů, které obsahují informace o schématu vrácené ze zdroje dat.
Poznámky
Metoda FillSchema načte schéma ze zdroje dat pomocí SelectCommand. Objekt připojení přidružený k objektu SelectCommand musí být platný, ale nemusí být otevřený. Pokud je připojení před FillSchema zavolání ukončeno, otevře se, aby načetla data, a pak se zavře. Pokud je připojení otevřené před FillSchema zavolání, zůstane otevřené.
Operace FillSchema přidá DataTable do cíle DataSethodnotu . Potom přidá sloupce do objektu DataColumnCollectionDataTable a nakonfiguruje následující DataColumn vlastnosti, pokud existují ve zdroji dat:
AutoIncrement. Musíte nastavit AutoIncrementStep a AutoIncrementSeed samostatně.
FillSchema také konfiguruje PrimaryKey vlastnosti a Constraints podle následujících pravidel:
Pokud vrátí jeden nebo více sloupců primárního SelectCommandklíče , použijí se jako sloupce primárního DataTableklíče pro .
Pokud nejsou vráceny žádné sloupce primárního klíče, ale jedinečné sloupce ano, jedinečné sloupce se použijí jako primární klíč, pokud všechny jedinečné sloupce nemají hodnotu null. Pokud je některý ze sloupců s možnou hodnotou null, UniqueConstraint přidá se do objektu ConstraintCollectionPrimaryKey , ale vlastnost není nastavena.
Pokud jsou vráceny sloupce primárního klíče i jedinečné sloupce, sloupce primárního klíče se použijí jako sloupce primárního klíče pro DataTable.
Všimněte si, že primární klíče a jedinečná omezení jsou přidány do ConstraintCollection podle předchozích pravidel, ale jiné typy omezení se nepřidávají.
Pokud je pro sloupec nebo sloupce v tabulce SQL Server definovaný jedinečný clusterovaný index a omezení primárního klíče je definováno pro samostatnou sadu sloupců, vrátí se názvy sloupců v clusterovém indexu. Pokud chcete vrátit název nebo názvy sloupců primárního klíče, použijte nápovědu k dotazu s příkazem SELECT, který určuje název indexu primárního klíče. Další informace o tom, jak zadat nápovědu k dotazu, najdete v tématu Nápověda (Transact-SQL) – dotaz.
Pokud při IDataAdapter naplnění DataTablenarazí na duplicitní sloupce, vygeneruje názvy pro následující sloupce pomocí vzoru "název_sloupce1", "název_sloupce2", "název_sloupce3" a tak dále. Pokud příchozí data obsahují nepojmenované sloupce, vloží se do vzorů DataSet "Sloupec1", "Sloupec2" a tak dále. Při přidání více sad výsledků do DataSet, každá sada výsledků se umístí do samostatné tabulky. Další sady výsledků se pojmenují tak, že k zadanému názvu tabulky připojíte integrální hodnoty (například "Tabulka", "Tabulka1", "Tabulka2" atd.). Aplikace by při používání názvů sloupců a tabulek měly být obezřetné, aby nedocházelo ke konfliktům s těmito vzory pojmenování.
FillSchema nevrátí žádné řádky. Fill Pomocí metody můžete přidat řádky do objektu DataTable.