Foreign Keys(外部キー)
このセクションでは、ForeignKeysスキーマコレクションを取得して外部キーに関する情報にアクセスする方法について説明します。
外部キー情報の取得
ForeignKeysスキーマコレクションを取得するには、CompositeConnectionクラスのGetSchemaメソッドを呼び出します。テーブル名で外部キー情報を制限できます。
返されたDataTableの結果にアクセスします。次の例は、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("ForeignKeys", new string[] {"Products"});
foreach (DataRow row in databaseSchema.Rows) {
Console.WriteLine(row["CONSTRAINT_NAME"]);
Console.WriteLine(row["TABLE_NAME"]);
}
}
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("ForeignKeys", New String() {"Products"})
For Each row As DataRow In databaseSchema.Rows
Console.WriteLine(row("CONSTRAINT_NAME"))
Console.WriteLine(row("TABLE_NAME"))
Next
End Using
返された列
ForeignKeysスキーマコレクションは、TDVの外部キーに関する次の情報を返します。
列名 |
データタイプ |
説明 |
CONSTRAINT_CATALOG |
System.String |
外部キーを含むデータベース。 |
CONSTRAINT_SCHEMA |
System.String |
外部キーを含むスキーマ。 |
CONSTRAINT_NAME |
System.String |
外部キーの名前。 |
CONSTRAINT_TYPE |
System.String |
FOREIGNKEYを返します。 |
TABLE_CATALOG |
System.String |
外部キーを含むテーブルのデータベース。 |
TABLE_SCHEMA |
System.String |
外部キーを含むテーブルのスキーマ。 |
TABLE_NAME |
System.String |
外部キーを含むテーブルの名前。 |
IS_DEFERRABLE |
System.String |
外部キーが延期可能かどうか。この値はYESまたはNOです。 |
INITIALLY_DEFERRED |
System.String |
外国人が最初に延期可能かどうか。この値はYESまたはNOです。 |