Teď jste offline a čekáte, až se znova připojí internet.

Jak načíst sloupec schématu pomocí objektu DataReader GetSchemaTable metoda a Visual C# .NET

DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.

Projděte si také anglickou verzi článku: 310107
Microsoft Visual Basic .NET verzi tohoto článku naleznete v tématu 310108.
Microsoft Visual C++ .NET verzi tohoto článku naleznete v tématu 309683.

Tento článek odkazuje na následující obor názvů knihovny tříd rozhraní.NET Framework společnosti Microsoft:
  • System.Data.OleDb

V TOMTO ÚKOLU

Souhrn
Tento článek ukazuje, jak načíst informace o schématu sloupec pomocí objektu DataReaderGetSchemaTable metoda v rozhraní ADO.NET. Jiný název sloupce schématu je jeho vlastnosti pole. Informace o schématu sloupec obsahuje následující informace o sloupci:
  • Jméno
  • Datový typ
  • Velikost
  • Zda je sloupec primárního klíče
  • Zda je ve sloupci pole typu Automatické číslo (AutoIncrement)
Metoda GetSchemaTable vrátí vlastnost DataTable , která obsahuje sloupec schématu objektu DataReader. Objekt DataTable obsahuje jeden řádek pro každé pole v této sadě. Každý sloupec je mapována na vlastnost pole v této sadě. Vlastnost DataTable sloupec Název_sloupce je název pole, vlastnosti, například vlastnost Název_sloupce, datový typ, ColumnSize, IsKeyColumnnebo IsAutoIncrement . Hodnota DataTable sloupce je hodnota vlastnosti pole, například jméno hodnotu pro vlastnost Název_sloupce .
Poznámka: Chcete-li získat primární klíče informace, včetně toho, zda pole je součástí primárního klíče a zda je pole AutoIncrement , nastavte na CommandBehavior.KeyInfoCommandBehavior hodnotu DataReader .

Zprostředkovatel .NET technologie OLE DB nebo zprostředkovatele .NET SQL můžete použít metodu GetSchemaTable . OleDbDataReader.GetSchemaTable metoda mapuje OLE DB IColumnsRowset::GetColumnsRowset metoda. SqlDataReader.GetSchemaTable metoda nepoužívá vrstvu zprostředkovatele OLE DB.

Poznámky Pokud explicitně pomocí metody GetSchemaTableobjektu DataReader nevrací sloupec schématu. Také načíst sloupec schématu pomocí GetSchemaTable , nelze aktualizovat objekt DataReader. Objekt DataReader vždy načítá datový proud pouze pro čtení, pouze pro předávání dat z databáze.

back to the top

Při použití metody GetSchemaTable

  • Objekt SqlConnection nepodporuje načítání informationin schématu SQL Server metoda podobná Metoda GetOleDbSchemaTable metoda OleDbConnection objektu. Metoda GetSchemaTable třídy SqlDataReader poskytuje jednoduchý způsob, jak získat ze serveru SQL Server sloupec schemainformation.
  • Přestože Metoda GetOleDbSchemaTable metoda OleDbConnection objektu můžete vrátit, tabulky, databáze a informace o schématu sloupec, můžete zjistit, že metoda GetSchemaTable objektu DataReader je jednodušší použít pokud chcete získat pouze informace o columnschema.
  • Chcete-li vytvořit nový objekt DataTable na základě existující DataTable vlastnost schématu při přizpůsobování názvy sloupců a othercolumn atributy, můžete použít metodu GetSchemaTable . Ukázkový kód demonstruje použití GetSchemaTable definovat nové tabulky naleznete v tématu "Visual Studio vzorky: Fitchand Mather 7.0 spusťte dotaz SQL" v dokumentaci Microsoft Visual Studio .NET OnlineHelp.
back to the top

Načíst sloupec schématu pomocí zprostředkovatele OLE DB .NET

Tento příklad uvádí informace o schématu pro sloupce (Vlastnosti pole) tabulky Employees v databázi Northwind serveru SQL Server.

Všimněte si, že při použití zprostředkovatele OLE DB .NET Provider použijete metodu GetSchemaTable objektu OleDbDataReader .
  1. Spustit Visual Studio .NET a pak vytvořte nový projekt Visual C #Console aplikace. Ve výchozím nastavení je vytvořen Class1.cs.
  2. Otevřete okno kód Class1. Vložte následující codeat horní části okna kód nad deklarace oboru názvů :
    using System.Data;using System.Data.OleDb;					
  3. V okně kód vložte následující kód ve funkci Main :
    OleDbConnection cn = new OleDbConnection();OleDbCommand cmd = new OleDbCommand();DataTable schemaTable; OleDbDataReader myReader; 			 //Open a connection to the SQL Server Northwind database.cn.ConnectionString = "Provider=SQLOLEDB;Data Source=server;User ID=login;                       Password=password;Initial Catalog=Northwind";cn.Open();//Retrieve records from the Employees table into a DataReader.cmd.Connection = cn;cmd.CommandText = "SELECT * FROM Employees";myReader = cmd.ExecuteReader(CommandBehavior.KeyInfo); //Retrieve column schema into a DataTable.schemaTable = myReader.GetSchemaTable();//For each field in the table...foreach (DataRow myField in schemaTable.Rows){    //For each property of the field...    foreach (DataColumn myProperty in schemaTable.Columns) {	//Display the field name and value.	Console.WriteLine(myProperty.ColumnName + " = " + myField[myProperty].ToString());    }    Console.WriteLine();    //Pause.    Console.ReadLine();}//Always close the DataReader and connection.myReader.Close();cn.Close();					
  4. Upravte parametry vlastnost ConnectionString správně připojit k vaší SQL Servercomputer.
  5. Stisknutím klávesy F5 kompilace a spuštění projektu. Noticethat vlastnosti jednotlivých polí jsou uvedeny v okně konzoly.
  6. Stisknutím klávesy ENTER procházejte seznam, consoleapplication ukončit a vrátit integrovaného rozvoje Environment(IDE).
back to the top

Načíst sloupec schématu pomocí zprostředkovatele .NET SQL

Tento příklad uvádí informace o schématu pro sloupce (Vlastnosti pole) tabulky Employees v databázi Northwind serveru SQL Server.

Poznámka: při použití zprostředkovatele SQL .NET, můžete použít metodu GetSchemaTable objektu SqlDataReader .
  1. Spusťte Visual Studio .NET a vytvořit nový projekt Visual C #Console aplikace. Ve výchozím nastavení je vytvořen Class1.cs.
  2. Otevřete okno kód Class1. Vložte následující codeat horní části okna kód nad deklarace oboru názvů :
    using System.Data;using System.Data.SqlClient;					
  3. V okně kód vložte následující kód ve funkci Main :
    SqlConnection cn = new SqlConnection();SqlCommand cmd = new SqlCommand();DataTable schemaTable; SqlDataReader myReader; 			 //Open a connection to the SQL Server Northwind database.cn.ConnectionString = "Data Source=server;User ID=login;                       Password=password;Initial Catalog=Northwind";cn.Open();//Retrieve records from the Employees table into a DataReader.cmd.Connection = cn;cmd.CommandText = "SELECT * FROM Employees";myReader = cmd.ExecuteReader(CommandBehavior.KeyInfo);//Retrieve column schema into a DataTable.schemaTable = myReader.GetSchemaTable();//For each field in the table...foreach (DataRow myField in schemaTable.Rows){    //For each property of the field...    foreach (DataColumn myProperty in schemaTable.Columns) {	//Display the field name and value.	Console.WriteLine(myProperty.ColumnName + " = " + myField[myProperty].ToString());    }    Console.WriteLine();    //Pause.    Console.ReadLine();}//Always close the DataReader and connection.myReader.Close();cn.Close();					
  4. Upravte parametry vlastnost ConnectionString správně připojit k vaší SQL Servercomputer.
  5. Stisknutím klávesy F5 kompilace a spuštění projektu. Všimněte si, že theproperties jednotlivých polí jsou uvedeny v okně konzoly.
  6. Stisknutím klávesy ENTER procházejte seznam, consoleapplication ukončit a vrátit se do IDE.
back to the top
Odkazy
Další informace o objektu DataReader a metoda GetSchemaTable naleznete v následujících tématech v dokumentaci Visual Studio .NET Online nápovědy: Další informace o použití objektu OleDbConnectionMetoda GetOleDbSchemaTable metoda načíst informace o schématu klepněte na následující číslo článku znalostní báze Microsoft Knowledge Base:
309681 Jak načíst informace o schématu pomocí Metoda GetOleDbSchemaTable a Visual C# .NET
back to the top

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 310107 - Poslední kontrola: 10/28/2013 23:41:00 - Revize: 5.0

Microsoft ADO.NET 1.1, Microsoft Visual C# .NET 2003 Standard Edition, Microsoft Visual C# .NET 2002 Standard Edition

  • kbdatabase kbhowtomaster kbsqlclient kbsystemdata kbmt KB310107 KbMtcs
Váš názor