教你如何查看数据表结构
当我们创建完表之后,如何查看表结构,以便于确认该表符合我们的预期呢,我们可以使用
describe
或者show create table
命令来查看mysql
数据表结构,下面我们就来看下具体用法。
1、describe语法
DESCRIBE/DESC
语句可以查看表的字段信息,其中包括字段名、字段数据类型、是否为主键、是否有默认值等。
语法:
DESCRIBE 表名
我们一般简写为:
DESC 表名
我们看下之前新建的一个表,来具体看下每一个含义的内容;
mysql> describe test_user;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int | YES | | NULL | |
| name | varchar(25) | YES | | NULL | |
| deptid | int | YES | | NULL | |
| money | float | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
mysql> desc test_user;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int | YES | | NULL | |
| name | varchar(25) | YES | | NULL | |
| deptid | int | YES | | NULL | |
| money | float | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
mysql>
可以看到我们无论使用describe
还是desc
命令查看表结构,结果都是一致的。
那么看下具体信息:
Fiels
:字段名Type
:字段类型Null
:是否可以为空Key
:是否有索引;PRI
表示是主键的一部分;UNI
表示该列是UNIQUE
索引的一部分;MUL
表示某个给定值允许出现多次Default
:默认值Extra
:表示可以获取的与给定列有关的附加信息
2、show create table语法
show create table
可以查看创建表的具体语句;
语法:
show create table <表名\G>
使用
SHOW CREATE TABLE
语句,不仅可以查看表创建时候的详细语句,还可以查看存储引擎和字符编码。\G
参数相当于格式化输出,使其输出内容具有较高的易读性。
示例:
mysql> show create table test_user;
+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table
|
+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test_user | CREATE TABLE `test_user` (
`id` int DEFAULT NULL COMMENT '员工编号',
`name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '员工姓名',
`deptid` int DEFAULT NULL COMMENT '所在部门编号',
`money` float DEFAULT NULL COMMENT '工资'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>
如果加上\G
之后,我们可以看到输出内容易读性高;
mysql> show create table test_user\G;
*************************** 1. row ***************************
Table: test_user
Create Table: CREATE TABLE `test_user` (
`id` int DEFAULT NULL COMMENT '员工编号',
`name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '员工姓名',
`deptid` int DEFAULT NULL COMMENT '所在部门编号',
`money` float DEFAULT NULL COMMENT '工资'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.00 sec)
ERROR:
No query specified
mysql>
支持,本文结束。

往期推荐
文章转载自运维家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




