查看所有表
语法
SHOW TABLES;
创建表
语法
1
2
3
4
5
6
7
8
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (
field datatype [约束] [comment '注解内容'],
field datatype [约束] [comment '注解内容'],
...
)
[engine 存储引擎]
[character set 字符集]
[collate 排序规则];
TEMPORARY :表示临时创建一个表
field :表示字段名
datatype :表示数据类型
约束 :表示字段的约束条件
comment :表示字段的注释
engine :表示表的存储引擎
character set :表示表的字符集
collate :表示表的排序规则
示例
创建⼀个⽤⼾表,其中包含⽤⼾编号、⽤⼾名、密码、⽣⽇,并指定字符集为utf8mb4,排序规则
为utf8mb4_0900_ai_ci
1
2
3
4
5
6
CREATE TABLE IF NOT EXISTS user(
id BIGINT COMMENT '用户编号',
name VARCHAR(10) COMMENT '用户名字',
password VARCHAR(20) COMMENT '密码',
birthday DATE COMMENT '生日'
)CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci;
创建⼀个表并指定存储引擎为MyISAM
1
2
3
4
5
6
CREATE TABLE IF NOT EXISTS user(
id BIGINT COMMENT '用户编号',
name VARCHAR(10) COMMENT '用户名字',
password VARCHAR(20) COMMENT '密码',
birthday DATE COMMENT '生日'
)ENGINE = MyISAM ;
表在磁盘上对应的文件
创建数据加时使用校验语句
IF NOT EXISTS
查看表结构
DESC 表名;
示例
Field:表中的列名
Type:列的数据类型
Null:是否允许为空
Key:索引类型
Default:默认值
Extra:额外信息
修改表
语法
1
2
3
4
5
6
7
8
9
10
11
ALTER TABLE tbl_name
[ alter_option [, alter_option ] ...];
alter_option : {
table_options
| ADD [ COLUMN ] col_name column_definition [ FIRST | AFTER col_name ]
| MODIFY [ COLUMN ] col_name column_definition [ FIRST | AFTER col_name ]
| DROP [ COLUMN ] col_name
| RENAME COLUMN old_col_name TO new_col_name
| RENAME [ TO | AS ] new_tbl_name
}
tbl_name: 要修改的表名
ADD: 向表中添加列
MODIFY: 修改表中现有的列
DROP: 删除表中现有的列
RENAME COLUMN: 重命名表中现有的列
RENAME [TO | AS] new_tbl_name: 重命名当前的表
示例
向表中添加⼀列
1
ALTER TABLE user ADD email VARCHAR(20) COMMENT'邮箱' AFTER birthday;
AFTER 是一个用于指定新添加字段位置的关键字,如果不指定 AFTER 或 FIRST(FIRST 表示插入到表的第一个位置),新字段默认会被添加到表中所有现有字段的最后。
修改某列的⻓度
1
ALTER TABLE user MODIFY [COLUMN] name VARCHAR(30) COMMENT '用户名字';
重命名某列
1
ALTER TABLE user RENAME COLUMN name TO username;
COLUMN 不能省略
删除某个字段
1
ALTER TABLE user DROP [COLUMN] email;
修改表名
1
ALTER TABLE user RENAME TO users;
删除表
1
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...;
TEMPORARY 表示删除临时表
tbl_name 表示要删除的表名
IF EXISTS 表示如果表不存在,不报错
Think more and practice more!