odbc_foreignkeys

外部キーのリストを取得する

説明

resourcefalse odbc_foreignkeys(
    resource $odbc,
    stringnull $pk_catalog,
    string $pk_schema,
    string $pk_table,
    string $fk_catalog,
    string $fk_schema,
    string $fk_table
)

指定したテーブルの外部キーのリスト、 または指定したテーブルの主キーを参照する他のテーブルの外部キーのリストを取得します。

パラメータ

odbc

ODBC 接続 ID。詳細は odbc_connect を参照ください。

pk_catalog

主キーテーブルのカタログ (ODBC 2 の用語では '修飾子')

pk_schema

主キーテーブルのスキーマ(ODBC 2 の用語では '所有者')

pk_table

主キーのテーブル。

fk_catalog

外部キーテーブルのカタログ (ODBC 2 の用語では '修飾子')

fk_schema

外部キーテーブルのスキーマ(ODBC 2 の用語では '所有者')

fk_table

外部キーのテーブル。

戻り値

ODBC 結果 ID を返します。失敗した場合に false を返します。

結果は、以下のようなカラムを持つものとなります。

  • PKTABLE_CAT
  • PKTABLE_SCHEM
  • PKTABLE_NAME
  • PKCOLUMN_NAME
  • FKTABLE_CAT
  • FKTABLE_SCHEM
  • FKTABLE_NAME
  • FKCOLUMN_NAME
  • KEY_SEQ
  • UPDATE_RULE
  • DELETE_RULE
  • FK_NAME
  • PK_NAME
  • DEFERRABILITY
ドライバは追加のカラムを返すことが出来ます。

プライマリーキーと関連がある外部キーが指定された場合、 結果セットは FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, KEY_SEQ でソートされます。 外部キーと関連がある主キーが指定された場合、 結果セットは PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, KEY_SEQ でソートされます。

pk_table がテーブル名を有している場合、 odbc_foreignkeys は指定したテーブルの主キー およびそのキーを参照する全ての外部キーのリストを結果として返します。

fk_table がテーブル名を有している場合、 odbc_foreignkeys は指定したテーブルにある全ての 外部キーおよびそのキーが参照する(他のテーブルの)主キーのリストを 結果として返します。

pk_table および fk_table が共にテーブル名を有している場合、 odbc_foreignkeyspk_table で指定されたテーブルの主キーを参照する fk_table で指定されたテーブルの外部キーを返します。 返されるキーは最大でも一つだけです。

参考

  • odbc_tables
  • odbc_primarykeys