返回顶部
首页 > mysql如何查看所有表的主键
  • 12
分享到

mysql如何查看所有表的主键

2024年03月26日 12人浏览 编程网

摘要

在 MySQL 中查看所有表的的主键有两种方法:一种是使用 SHOW INDEX 语句,另一种是使用 INFORMATION_SCHEMA.COLUMNS 表。

SHOW INDEX 语句提供了一个每个表的索引列表,包括主键索引。INFORMATION_SCHEMA.COLUMNS 表包含有关数据库中所有列的信息,包括是否为主键。

详细说明

使用 SHOW INDEX 语句

SHOW INDEX 语句可以用来查看一个或多个表的索引信息。要查看所有表的的主键索引,可以使用以下语句:

SHOW INDEX FROM <database_name>;

其中 <database_name> 是要查看的数据库的名称。

查询结果将显示每个表的索引列表,包括主键索引。主键索引将被标记为 PRIMARY。例如,以下输出显示了 my_database 数据库中 my_table 表的主键索引:

Table: my_table
Index: PRIMARY
Seq_in_index: 1
Column_name: id
Collation: A
Cardinality: 1000
Sub_part: NULL
Packed: NULL
Null: NO
Index_type: BTREE
Comment: 

使用 INFORMATION_SCHEMA.COLUMNS

INFORMATION_SCHEMA.COLUMNS 表包含有关数据库中所有列的信息,包括是否为主键。要查看所有表的主键,可以使用以下查询:

SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_KEY = "PRI";

查询结果将显示每个表的主键列。例如,以下输出显示了 my_database 数据库中所有表的主键:

TABLE_NAME  COLUMN_NAME
my_table    id
my_table2   name

附加选项

查看特定表的的主键

要查看特定表的的主键索引,可以在 SHOW INDEXINFORMATION_SCHEMA.COLUMNS 查询中指定表名。例如,以下查询将显示 my_table 表的主键索引:

SHOW INDEX FROM my_database WHERE Table_name = "my_table";
SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = "my_table" AND COLUMN_KEY = "PRI";

查看所有非空列

还可以使用 NOT NULL 约束来查看所有非空列,这些列通常是主键的候选者。以下查询将显示 my_database 数据库中所有非空列:

SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE IS_NULLABLE = "NO";

以上就是mysql如何查看所有表的主键的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: mysql如何查看所有表的主键

本文链接: https://www.lsjlt.com/wiki/e67034cb4f.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作