🚀DDL-表操作-查询
查询当前数据库所有表
前提是你要先通过use指令使用这个数据库,再通过show tables指令去查看当前数据库里的所有表
show tables ;
比如我们要到test这个数据库里去查看里面的所有表,那么就是下图中的指令
use test ; show tables ;
返回了一个空的集合,这时候说明我们去查询的这个数据库里的所有表,这个数据库里没有表结构
此时我们再切换到另一个数据库里看有没有表结构
这时可以发现有许多表结构,因为sys是一个系统数据库,查询到了系统中的很多表结构
🚀查看指定表结构
通过这条指令,我们可以查看到指定表的字段,字段的类型、是否可以为NULL,是否存在默认值等信息。(换句话说就是查现在有没有数据在表里,还有查一些数据类型)
desc 表名 ;
🚀查询指定表的建表语句
通过这条指令,主要是用来查看建表语句的,而有部分参数我们在创建表的时候,并未指定也会查询到,因为这部分是数据库的默认值,如:存储引擎ENGINE、字符集utf8mb4等。通过这种方式去查询的表比desc查询的表更加详细
show create table 表名 ;
🚀DDL-表操作-创建表
CREATE [temporary] TABLE [if not exists] 表名( 字段1 字段1类型 [ COMMENT 字段1注释 ], 字段2 字段2类型 [ COMMENT 字段2注释 ], 字段3 字段3类型 [ COMMENT 字段3注释 ], ...... 字段n 字段n类型 [ COMMENT 字段n注释 ] ) [ COMMENT 表注释 ] ;
注意: [...] 内为可选参数,最后一个字段后面没有逗号
注意temporary这个参数它的作用是创建一个临时表,关闭即销毁
案例:比如,我们创建一张表 tb_user ,对应的结构如下,那么建表语句为
首先注意,不要在系统库sys中执行你的操作,切换到test数据库中,然后输入如下指令:
注意!!MySQL中指定字符串用varchar
create table tb_user( id int comment '编号', name varchar(50) comment '姓名', age int comment '年龄', gender varchar(1) comment '性别' ) comment '用户表';
验证下是否创建成功:
此数据库之前是空的,现在创建成功。