外部キー
このセクションでは、ForeignKeys スキーマコレクションを取得することで外部キーに関する情報にアクセスする方法について説明します。
外部キー情報の取得
ForeignKeys スキーマコレクションを取得するには、UMSaaSCloudConnection クラスのGetSchema メソッドを呼び出します。外部キー情報は、カタログ、スキーマ、あるいはテーブル名に基づいて制限できます。
返されたDataTable の結果にアクセスします。次の例は、Account テーブルの外部キーをリストします。
C#
String connectionString = "AuthScheme=Basic;User=myUser;Password=myPassword;Security Token=myToken;";
using (UMSaaSCloudConnection conn = new UMSaaSCloudConnection(connectionString)) {
conn.Open();
DataTable databaseSchema = conn.GetSchema("ForeignKeys", new string[] {"Account"});
foreach (DataRow row in databaseSchema.Rows) {
Console.WriteLine(row["CONSTRAINT_NAME"]);
Console.WriteLine(row["TABLE_NAME"]);
}
}
VB.NET
Dim connectionString As String = "AuthScheme=Basic;User=myUser;Password=myPassword;Security Token=myToken;"
Using conn As New UMSaaSCloudConnection(connectionString)
conn.Open()
Dim databaseSchema As DataTable = conn.GetSchema("ForeignKeys", New String() {"Account")
For Each row As DataRow In databaseSchema.Rows
Console.WriteLine(row("CONSTRAINT_NAME"))
Console.WriteLine(row("TABLE_NAME"))
Next
End Using
返されたカラム
ForeignKeys スキーマコレクションは、UMSaaSCloud の外部キーに関する次の情報を返します。
| カラム名 | データ型 | 説明 |
| CONSTRAINT_CATALOG | System.String | 外部キーを含むデータベース。 |
| CONSTRAINT_SCHEMA | System.String | 外部キーを含むスキーマ。 |
| CONSTRAINT_NAME | System.String | 外部キーの名前。 |
| CONSTRAINT_TYPE | System.String | FOREIGN KEY を返す。 |
| TABLE_CATALOG | System.String | 外部キーを含むテーブルのデータベース。 |
| TABLE_SCHEMA | System.String | 外部キーを含むテーブルのスキーマ。 |
| TABLE_NAME | System.String | 外部キーを含むテーブルの名前。 |
| IS_DEFERRABLE | System.String | 外部キーが遅延可能であるかどうか。値はYES またはNO。 |
| INITIALLY_DEFERRED | System.String | 外部キーが初期状態で遅延可能であるかどうか。値はYES またはNO。 |