インデックス
Indexes コレクションをクエリして、主キーのようなインデックスに関する情報を取得できます。
主キー情報を取得
このスキーマコレクションを取得するには、SAPAribaSourceConnection クラスのGetSchema メソッドを呼び出します。結果は、テーブル名に基づいて制限できます。 次の例は、SAP Ariba テーブルVendors の主キーを取得します。
C#
String connectionString = "API=SupplierDataAPIWithPagination-V4;APIKey=wWVLn7WTAXrIRMAzZ6VnuEj7Ekot5jnU;Environment=SANDBOX;Realm=testRealm;AuthScheme=OAuthClient;InitiateOAuth=GETANDREFRESH;OAuthClientId=testClient;OAuthClientSecret=testClientSecret;"; using (SAPAribaSourceConnection conn = new SAPAribaSourceConnection(connectionString)) { conn.Open(); DataTable databaseSchema = conn.GetSchema("Indexes", new string[] {"Vendors"}); foreach (DataRow row in databaseSchema.Rows) { Console.WriteLine(row["INDEX_NAME"]); Console.WriteLine(row["PRIMARY"]); } }
VB.NET
Dim connectionString As String = "API=SupplierDataAPIWithPagination-V4;APIKey=wWVLn7WTAXrIRMAzZ6VnuEj7Ekot5jnU;Environment=SANDBOX;Realm=testRealm;AuthScheme=OAuthClient;InitiateOAuth=GETANDREFRESH;OAuthClientId=testClient;OAuthClientSecret=testClientSecret;" Using conn As New SAPAribaSourceConnection(connectionString) conn.Open() Dim databaseSchema As DataTable = conn.GetSchema("Indexes", New String() {"Vendors"}) 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 | インデックスの説明。 |