結果セット
テーブルスキーマに対して実行できるクエリの結果と同じカラム情報にアクセスできます。返されるカラムについては、カラム を参照してください。
結果セットメタデータの取得
GoogleSpannerDataReader のGetSchemaTable メソッドを使用して、結果セットのメタデータを取得できます。GetSchemaTable は、ExecuteReader を呼び出してから呼び出します。
DataTable の各行は、クエリの結果のカラムを説明します。
C#
string connectionString = "ProjectId='project1';InstanceId='instance1';Database='db1';OAuthClientId='757060765381';OauthClientSecret='abc';";
using (GoogleSpannerConnection conn = new GoogleSpannerConnection(connectionString)) {
GoogleSpannerCommand cmd = new GoogleSpannerCommand("SELECT * FROM [CData].[GoogleSpanner].Customer WHERE CustomerId = '12345'", conn);
GoogleSpannerDataReader 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 = "ProjectId='project1';InstanceId='instance1';Database='db1';OAuthClientId='757060765381';OauthClientSecret='abc';"
Using conn As New GoogleSpannerConnection(connectionString)
Dim cmd As New GoogleSpannerCommand("SELECT * FROM [CData].[GoogleSpanner].Customer WHERE CustomerId = '12345'", conn)
Dim rdr As GoogleSpannerDataReader = 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