MySQL
安装和配置
Sever Configuration Type应该选择Development。
数据库设计
创建数据库
在包含中文的数据库中,字符集和排序匹配规则通常选择utf8mb4和utf8mb4_0900_ai_ci;
创建表时,存储引擎选择InnoDB,其他和数据库保持一致。
数据库
查看所有数据库:show database;
创建数据库:create database 数据库名;
打开数据库:use 数据库名;
删除数据库:dorp 数据库名;
数据表
创建数据表:
查看数据表结构
- 查看表基本结构:desc 表名
- 查看表详细结构:show create table 表名\G
修改表
- 修改表名:alter table 表名 rename 新表名
- 修改字段名:alter table 表名 change 原字段名 新字段名 新数据类型
- 修改字段数据类型:alter table 表名 modify 字段名 新数据类型
- 修改字段顺序:alter table 表名 modify 字段名 数据类型 [first][after 已有字段名]
- 添加字段:alter table 表名 add 新字段名 数据类型 约束条件 [first][after 已有字段名]
- **删除字段**:alter table 表名 drop 字段名`
表约束条件
主键约束:
- 创建数据表时的单字段主键约束:属性名 数据类型 primary key
- 创建数据表时的多字段主键约束:(表约束条件)primary key(字段1,字段2,...)
- 添加主键约束:
非空约束:
- 创建数据表时的非空约束:字段名 数据类型 not null
默认值约束:
- 创建数据表时的默认值约束:字段名 数据类型 default 默认值
唯一性约束:
主键字段默认有唯一性约束。
- 创建数据表时的唯一性约束:字段名 数据类型 unique
外键约束:
- 创建数据表时的外键约束:[constraint 外键名]foreige key(字段名) references 主表名(主键字段名),在字段全部声明完成后单独一行进行声明。
create table 数据表名(
属性名 数据类型 [约束条件],
属性名 数据类型 [约束条件],
...
[constraint 外键名]foreige key(字段名) references 主表名(主键字段名),
其他表约束条件
)
检查约束:
检查约束在MySQL8.0前的版本不生效。
- 创建数据表时的检查约束:字段名 数据类型 check(约束条件)
设置字段值自动增加:
每个数据表最多只能存在一个值自动增加的字段,且该字段必须为键(主键、外键或唯一键),其数据类型为int、tinyint、smallint或bigint,默认初始值为1,递增1。
- 创建数据表时设置字段值自动增加:字段名 数据类型 auto_increment