次の方法で共有


getExportedKeys メソッド (SQLServerDatabaseMetaData)

指定されたテーブルの主キー列を参照する外部キー列の記述を取得します。

構文

public java.sql.ResultSet getExportedKeys(java.lang.String cat,
                                          java.lang.String schema,
                                          java.lang.String table)

パラメーター

cat

カタログ名を含む String です。

schema

スキーマ名を含む String です。

table

テーブル名を含む String です。

戻り値

SQLServerResultSet オブジェクトです。

例外

SQLServerException

解説

getExportedKeys メソッドは、java.sql.DatabaseMetaData インターフェイスの getExportedKeys メソッドで規定されています。

getExportedKeys メソッドによって返される結果セットには、次の情報が含まれます。

名前 種類 説明

PKTABLE_CAT

String

主キー テーブルを含むカタログの名前です。

PKTABLE_SCHEM

String

主キー テーブルのスキーマの名前です。

PKTABLE_NAME

String

主キー テーブルの名前です。

PKCOLUMN_NAME

String

主キーの列名です。

FKTABLE_CAT

String

外部キー テーブルを含むカタログの名前です。

FKTABLE_SCHEM

String

外部キー テーブルのスキーマの名前です。

FKTABLE_NAME

String

外部キー テーブルの名前です。

FKCOLUMN_NAME

String

外部キーの列名です。

KEY_SEQ

short

複数列の主キーにおける列のシーケンス番号です。

UPDATE_RULE

short

SQL の操作が更新であるとき、外部キーに適用される動作です。次のいずれかの値を指定します。

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)

DELETE_RULE

short

SQL の操作が削除であるとき、外部キーに適用される動作です。次のいずれかの値を指定します。

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)

FK_NAME

String

外部キーの名前です。

PK_NAME

String

主キーの名前です。

DEFERRABILITY

short

外部キーの制限の評価を、コミット時まで遅延できるかどうかを示します。次のいずれかの値を指定します。

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

importedKeyNotDeferrable (7)

注意

getExportedKeys メソッドによって返されるデータの詳細については、SQL Server オンライン ブックの「sp_fkeys (Transact-SQL)」を参照してください。

次の例では、getExportedKeys メソッドを使用して、SQL Server 2005 AdventureWorks サンプル データベースの Person.Contact テーブルにある主キーを参照するすべての外部キーに関する情報を返す方法を示します。

public static void executeGetExportedKeys(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getExportedKeys("AdventureWorks", "Person", "Contact");
      ResultSetMetaData rsmd = rs.getMetaData();

      // Display the result set data.
      int cols = rsmd.getColumnCount();
      while(rs.next()) {
         for (int i = 1; i <= cols; i++) {
            System.out.println(rs.getString(i));
         }
      }
      rs.close();
   } 

   catch (Exception e) {
      e.printStackTrace();
   }
}

参照

リファレンス

SQLServerDatabaseMetaData クラス

概念

SQLServerDatabaseMetaData のメソッド
SQLServerDatabaseMetaData のメンバー