初识MySQL07 ☆ 插入修改和删除语句详解
数据库意义:数据存储和管理
DML语言:数据操作语言
- Insert
- Update
- Delete
7.1 插入
Insert
1 | -- 插入语句 |
语法:insert into 表名 ([字段1,字段2,...]) values('值1'),('值2'),('...')
注意事项:
- 字段和字段之间使用英文逗号隔开
- 字段是可以省略的,但是后面的值必须要一一对应
- 可以同时插入多条数据,VALUES后的值需要使用逗号隔开
7.2 修改
Update
1 | -- 修改 |
条件:where子句->运算符 字段>=<或者在某个区间

- 操作符会返回布尔值
| 操作符 | 意义 | 表达式例子 |
|---|---|---|
| = | 等于 | 5=6 |
| <> != | 不等于 | 5!=6 |
| > | 大于 | 5>4 |
| < | 小于 | 5<4 |
| >= | 大于等于 | 5>=4 |
| <= | 小于等于 | 5<=4 |
| BETWEEN AND | 闭区间 | [2,5] |
| AND | 且 | 5>1 AND 2>1 |
| OR | 或 | 5>1 OR 2<1 |
语法:update 表名 set 字段名=要修改成为的内容 where 筛选条件
注意事项:
- colnum_name 是数据库的列,尽量用``包括
- 筛选条件如果不写就会对所有的列进行操作
- 可以把值改为变量(如CURRENT_TIME),不一定是具体的值
- 多个设置的属性之间使用英文逗号隔开
7.3 删除
Delete
语法:delete from 表名 [where 筛选条件]
1 | -- 删除数据 |
TRUNCATE
- 完全清空一个数据库表,表的结构和索引约束不会变
1 | -- 清空表 |
Delete 和 Truncate区别
- 相同点:都能删除数据,都不会删除表结构
- 不同:
- TRUNCATE 重新设置 自增列 计数器归零 Delete不会重置自增量
- TRUNCATE 不会影响事务
Delete删除之后重启数据库:
- InnoDB 自增列会从1开始(存在内存中,断电就丢失)貌似是计数器的问题,mysql8.0已修复
- MYISAM 继续从上一个自增量开始(存在文件中,不会断电丢失)








