1. 数据库:
# 显示所有数据库
mysql> show databases;
# 创建数据库
mysql> create database t;
# 删除数据库
mysql> drop database t;
# 选择数据库
mysql> use t;
2. 数据表:
# 显示所有数据表
mysql> show tables;
# 创建表格
格式:
create table 表名 (
属性名 数据类型 [完整性约束],
属性名 数据类型 [完整性约束]
);
范例:
mysql> create table u (
id int,
name varchar(32)
);
# 查看表结构
describe u;
# 查看表详细定义
show create table t;
# 删除表
drop table t;
# 修改表
# 修改表名
alter table oldTablename rename newTablename;
# -添加字段
alter table tablename add propName propType; # 在表最后添加字段
alter table tablename add propName propType first; # 在表最前便添加字段
alter table tablename add propName propType after prePropName; # 在某个字段后添加字段
# -删除字段
alter table tablename drop propName;
# -修改字段
alter table tablename modify propName newPropType; # 改类型
alter table tablename change propName newPropName PropType; # 改名[改类型]
alter table tablename modify propName propType first | after pName; # 修改字段位置
表约束
约束条件 | 说明 |
---|---|
primary key | 主键 |
not null | 不能为空 |
unique | 唯一 |
auto_increment | 自动增长 |
default | 默认值 |
##### 设置字段约束
alter table u modify score varchar(32) not null;
3. 数据操作
# 插入数据
insert into tableName(filed1, filedn) values(values1, valuesn)[, (values1, valuesn)]; #自动增长字段可以使用null
# 删除数据
delete from tableName where condition;
# 更新数据
update tableName set filed1=values1[, filedn=valuesn] where condition;
5. 数据查询
mysql> select * from lib_user [order by filed1 [desc, asc]];
mysql> select distinct id from lib_user;
mysql> select * from lib_user where id [not] in(1, 2);
mysql> select * from u where id between 1 and 3;
mysql> select * from u where name like '%c%';
mysql> select avg(score) from u group by name;
# 连接查询
mysql> select * from u inner join s on u.id=s.uid; // 内连接
mysql> select * from u left join s on u.id=s.uid; // 左连接
# 子查询
关键字 >, in ,exists, any, all
mysql> select * from s where uid > (select uid from s where id=1);
6. 索引
create table 表名 (
属性名 数据类型 [完整性约束],
属性名 数据类型 [完整性约束],
index passwordIndex (password)
);
create [unique|fulltext|spatial] index indexname
on tablename (propName [length] [asc|desc]);
3. 参照
blog
如何在Ubuntu 18.04中安装MySQL 8.0数据库服务器:https://www.linuxidc.com/Linux/2018-11/155408.htm
book
精通 MySQL 8 清华大学出版社出版社