インデックス
Indexes コレクションをクエリして、主キーのようなインデックスに関する情報を取得できます。
主キー情報を取得
このスキーマコレクションを取得するには、ReckonAccountsHostedConnection クラスのGetSchema メソッドを呼び出します。結果は、テーブル名に基づいて制限できます。 次の例は、Reckon Accounts Hosted テーブルCustomers の主キーを取得します。
C#
String connectionString = "SubscriptionKey=test;CountryVersion=2021.R2.AU;CompanyFile=Q:/CData Software.QBW;User=test;Password=test;InitiateOAuth=GETANDREFRESH;CallbackURL=http://localhost:33333;OAuthClientId=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;";
using (ReckonAccountsHostedConnection conn = new ReckonAccountsHostedConnection(connectionString)) {
conn.Open();
DataTable databaseSchema = conn.GetSchema("Indexes", new string[] {"Customers"});
foreach (DataRow row in databaseSchema.Rows) {
Console.WriteLine(row["INDEX_NAME"]);
Console.WriteLine(row["PRIMARY"]);
}
}
VB.NET
Dim connectionString As String = "SubscriptionKey=test;CountryVersion=2021.R2.AU;CompanyFile=Q:/CData Software.QBW;User=test;Password=test;InitiateOAuth=GETANDREFRESH;CallbackURL=http://localhost:33333;OAuthClientId=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;"
Using conn As New ReckonAccountsHostedConnection(connectionString)
conn.Open()
Dim databaseSchema As DataTable = conn.GetSchema("Indexes", New String() {"Customers"})
For Each row As DataRow In databaseSchema.Rows
Console.WriteLine(row("INDEX_NAME"))
Console.WriteLine(row("PRIMARY"))
Next
End Using
返されたカラム
Indexes スキーマコレクションは、次のカラムを含みます。
| カラム名 | データ型 | 説明 |
| INDEX_CATALOG | System.String | インデックスを含むデータベースの名前。 |
| INDEX_SCHEMA | System.String | インデックスを含むスキーマの名前。 |
| TABLE_NAME | System.String | インデックスを含むテーブルの名前。 |
| INDEX_NAME | System.String | インデックスの名前。 |
| UNIQUE | System.Boolean | インデックスが固有かどうか。 |
| PRIMARY | System.Boolean | インデックスが主キーかどうか。 |
| TYPE | System.Int32 | インデックスタイプに対応する整数値:statistic (0)、clustered (1)、hashed (2)、またはother (3)。 |
| COMMENT | System.String | インデックスの説明。 |