DESCRIBE、SHOW CREATE table、SHOW COLUMNS和查询information_schema是查看mysql表结构的常用方法,分别适用于快速查看字段信息、获取完整建表语句、灵活筛选字段和程序化处理场景。

在MySQL中查看表结构有多种方式,常用的方法可以直接获取字段名、数据类型、约束等信息。以下是几种实用的命令。
DESCRIBE 查看表结构
使用 DESCRIBE(可简写为 DESC)是最简单的方式,能快速查看表的字段定义。
语法:
DESCRIBE 表名; 或 DESC 表名;
示例:
假设有一个名为 users 的表:
DESCRIBE users;
输出会包含:Field(字段名)、Type(数据类型)、NULL(是否允许为空)、Key(是否为主键或索引)、default(默认值)、Extra(额外信息,如自增)。
SHOW CREATE TABLE 查看建表语句
如果你想看到完整的建表语句,包括字符集、引擎、约束和索引等细节,可以使用:
SHOW CREATE TABLE 表名;
示例:
SHOW CREATE TABLE usersG
使用 G 可以让输出更清晰,按列垂直显示,便于阅读。
SHOW COLUMNS 查看字段详情
这个命令与 DESCRIBE 类似,但提供更多控制选项。
SHOW COLUMNS FROM 表名;
支持的扩展语法:
- SHOW COLUMNS FROM 表名 FROM 数据库名;
- SHOW COLUMNS FROM 表名 LIKE ‘条件’;(例如 LIKE ‘%name’)
从 information_schema 获取元数据
MySQL 将所有表结构信息存储在 information_schema 系统数据库中,可通过 SQL 查询灵活获取。
示例:查询某个表的所有字段信息
select COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT, COLUMN_KEY, EXTRA FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ‘数据库名’ AND TABLE_NAME = ‘表名’;
这种方式适合需要程序化处理或筛选特定类型字段的场景。
基本上就这些。日常开发中用 DESC 最快,查细节用 SHOW CREATE TABLE,做工具或脚本时推荐查 information_schema。不复杂但容易忽略的是数据库名和表名的大小写敏感性,注意环境配置差异。


