教你如何查看数据表结构
当我们创建完表之后,如何查看表结构,以便于确认该表符合我们的预期呢,我们可以使用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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




