查看mysql数据表结构的两种方法你会吗?

教你如何查看数据表结构

当我们创建完表之后,如何查看表结构,以便于确认该表符合我们的预期呢,我们可以使用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>

支持,本文结束。

更多内容请转至VX公众号 “运维家” ,获取最新文章。

------ “运维家” ------

------ “运维家” ------

------ “运维家” ------

系统运维工程师面试,运维工程师优秀员工提名词,tr运维工程师,特来电运维工程师工作日常,IT运维工程师高级;
智能制造运维工程师培训课程,远程办公的运维工程师,迈瑞医疗运维工程师工资待遇,后台运维工程师是做什么的;
风力运维工程师怎样,浪潮云运维工程师,医疗设备运维工程师证书样本,运维工程师男朋友,运维工程师暴躁。

你可能感兴趣的:(mysql,mysql,java,数据库)