文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  INFORMATION_SCHEMA KEY_COLUMN_USAGE 表格

28.3.16 INFORMATION_SCHEMA KEY_COLUMN_USAGE 表格

KEY_COLUMN_USAGE 表格描述哪些鍵欄位具有限制。此表格不提供有關功能鍵部分(因為它們是表達式)的資訊,且表格僅提供有關欄位的資訊。

KEY_COLUMN_USAGE 表格具有以下欄位:

  • CONSTRAINT_CATALOG

    限制所屬的目錄名稱。此值永遠為 def

  • CONSTRAINT_SCHEMA

    限制所屬的綱要(資料庫)名稱。

  • CONSTRAINT_NAME

    限制的名稱。

  • TABLE_CATALOG

    表格所屬的目錄名稱。此值永遠為 def

  • TABLE_SCHEMA

    表格所屬的綱要(資料庫)名稱。

  • TABLE_NAME

    具有限制的表格名稱。

  • COLUMN_NAME

    具有限制的欄位名稱。

    如果限制是外來鍵,則這是外來鍵的欄位,而不是外來鍵參考的欄位。

  • ORDINAL_POSITION

    欄位在限制內的順序位置,而不是欄位在表格內的順序位置。欄位位置從 1 開始編號。

  • POSITION_IN_UNIQUE_CONSTRAINT

    對於唯一和主鍵限制,此欄位為 NULL。對於外來鍵限制,此欄位是被參考表格中鍵的順序位置。

  • REFERENCED_TABLE_SCHEMA

    限制所參考的綱要名稱。

  • REFERENCED_TABLE_NAME

    限制所參考的表格名稱。

  • REFERENCED_COLUMN_NAME

    限制所參考的欄位名稱。

假設有兩個表格名稱為 t1t3,它們具有以下定義:

CREATE TABLE t1
(
    s1 INT,
    s2 INT,
    s3 INT,
    PRIMARY KEY(s3)
) ENGINE=InnoDB;

CREATE TABLE t3
(
    s1 INT,
    s2 INT,
    s3 INT,
    KEY(s1),
    CONSTRAINT CO FOREIGN KEY (s2) REFERENCES t1(s3)
) ENGINE=InnoDB;

對於這兩個表格,KEY_COLUMN_USAGE 表格有兩列:

  • 其中一列 CONSTRAINT_NAME = 'PRIMARY'TABLE_NAME = 't1'COLUMN_NAME = 's3'ORDINAL_POSITION = 1POSITION_IN_UNIQUE_CONSTRAINT = NULL

    對於 NDB:此值永遠為 NULL

  • 另一列 CONSTRAINT_NAME = 'CO'TABLE_NAME = 't3'COLUMN_NAME = 's2'ORDINAL_POSITION = 1POSITION_IN_UNIQUE_CONSTRAINT = 1