ADO.NET Provider for EnterpriseDB

Build 23.0.8839

結果セット

テーブルスキーマに対して実行できるクエリの結果と同じカラム情報にアクセスできます。返されるカラムについては、カラム を参照してください。

結果セットメタデータの取得

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

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839