結果セット
テーブルスキーマに対して実行できるクエリの結果と同じカラム情報にアクセスできます。返されるカラムについては、カラム を参照してください。
結果セットメタデータの取得
EnterpriseDBDataReader のGetSchemaTable メソッドを使用して、結果セットのメタデータを取得できます。GetSchemaTable は、ExecuteReader を呼び出してから呼び出します。
DataTable の各行は、クエリの結果のカラムを説明します。
C#
string connectionString = "User=postgres;Password=admin;Database=postgres;Server=127.0.0.1;Port=5444"; using (EnterpriseDBConnection conn = new EnterpriseDBConnection(connectionString)) { EnterpriseDBCommand cmd = new EnterpriseDBCommand("SELECT * FROM \"postgres\".\"public\".Orders WHERE ShipCountry = 'USA'", conn); EnterpriseDBDataReader rdr = cmd.ExecuteReader(); DataTable schemaTable = rdr.GetSchemaTable(); foreach (DataRow row in schemaTable.Rows) { foreach (DataColumn col in schemaTable.Columns) { Console.WriteLine("{0}: {1}", col.ColumnName, row[col]); } } }
VB.NET
Dim connectionString As String = "User=postgres;Password=admin;Database=postgres;Server=127.0.0.1;Port=5444" Using conn As New EnterpriseDBConnection(connectionString) Dim cmd As New EnterpriseDBCommand("SELECT * FROM \"postgres\".\"public\".Orders WHERE ShipCountry = 'USA'", conn) Dim rdr As EnterpriseDBDataReader = cmd.ExecuteReader() Dim schemaTable As DataTable = rdr.GetSchemaTable() For Each row As DataRow In schemaTable.Rows For Each col As DataColumn In schemaTable.Columns Console.WriteLine("{0}: {1}", col.ColumnName, row(col)) Next Next End Using