📜  mysql 显示外键 - SQL (1)

📅  最后修改于: 2023-12-03 15:33:03.410000             🧑  作者: Mango

MySQL 显示外键 - SQL

MySQL 是一种关联数据库管理系统,支持多种语言,如 PHP、Python、Java 等。MySQL 中的外键可以用于关联两个或多个表的数据。在 MySQL 中,有多种方法可以显示外键。

SHOW CREATE TABLE

一种显示外键的方法是使用 SHOW CREATE TABLE 命令。该命令将显示表的 DDL,其中包括外键信息。例如:

SHOW CREATE TABLE my_table;

该命令将返回 my_table 表的 DDL,其中包括外键的定义。

SHOW TABLE STATUS

另一种显示外键的方法是使用 SHOW TABLE STATUS 命令。该命令将显示与表相关的元数据,包括外键信息。例如:

SHOW TABLE STATUS WHERE Name='my_table';

该命令将返回 my_table 表的元数据,其中包括外键的定义。

INFORMATION_SCHEMA

还可以使用 MySQL 内置的 INFORMATION_SCHEMA 数据库中的表来显示外键。该方法需要使用以下查询:

SELECT
    FK.CONSTRAINT_NAME,
    FK.TABLE_NAME,
    FK.COLUMN_NAME,
    PK.TABLE_NAME AS REFERENCED_TABLE_NAME,
    PK.COLUMN_NAME AS REFERENCED_COLUMN_NAME
FROM
    INFORMATION_SCHEMA.KEY_COLUMN_USAGE FK
    JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS RC ON
        FK.CONSTRAINT_NAME = RC.CONSTRAINT_NAME
    JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE PK ON
        RC.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
WHERE
    FK.TABLE_SCHEMA = 'my_database'
    AND FK.TABLE_NAME = 'my_table';

该查询将返回 my_table 表的所有外键定义。

以上是 MySQL 中显示外键的三种方法。通过这些方法,程序员可以快速查看表格之间的关联关系,以便更好地管理数据。