Indexes(インデックス)
Indexesコレクションにクエリを実行すると、主キーなどのインデックスに関する情報を取得できます。
主キー情報の取得
このスキーマコレクションを取得するには、CompositeConnectionクラスのGetSchemaメソッドを呼び出します。テーブル名で結果を制限できます。次の例では、TDVテーブルProductsの主キーを取得します。
C#
String connectionString = "Host=myHost;Domain=myDomain;DataSource=myDataSource;User=myUser;Password=myPassword";
using (CompositeConnection conn = new CompositeConnection(connectionString)) {
conn.Open();
DataTable databaseSchema = conn.GetSchema("Indexes", new string[] {"Products"});
foreach (DataRow row in databaseSchema.Rows) {
Console.WriteLine(row["INDEX_NAME"]);
Console.WriteLine(row["PRIMARY"]);
}
}
VB.NET
Dim connectionString As String = "Host=myHost;Domain=myDomain;DataSource=myDataSource;User=myUser;Password=myPassword"
Using conn As New CompositeConnection(connectionString)
conn.Open()
Dim databaseSchema As DataTable = conn.GetSchema("Indexes", New String() {"Products"})
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 |
インデックスの名前。 |
個性的 |
System.Boolean |
インデックスが一意かどうか。 |
主要な |
System.Boolean |
インデックスが主キーであるかどうか。 |
タイプ |
System.Int32 |
インデックスタイプに対応する整数値:統計(0)、クラスター化(1)、ハッシュ(2)、またはその他(3)。 |
コメント |
System.String |
インデックスの説明。 |