3.4 DML → update 修改数据
update 表名 set 字段名 = 新值 条件找到要修改的值
-
修改所有条数据的该字段值
update `表名` set `字段名` =‘值’;
-
修改单条数据的该字段值(用其它字段值来判断)
update `表名` set `字段名` = ‘值’ where `其它字段名`=当前的值
条件:where 子句 运算符(返回 boolean 值)
操作符 | 意义 | 范围 | 结果 |
---|---|---|---|
= | 等于 | 5=6 | false |
<> 或 ! = | 不等于 | 5 != 6 | true |
> | 大于 | 5 > 4 | true |
< | 小于 | 5 < 4 | false |
< = | 小于等于 | 4 < = 4 | true |
> = | 大于等于 | 4 > = 4 | true |
between min and max | 在某个范围内 | [min,max] | true |
AND | 我和你&& | 5>1 and 1>2 | false |
OR | 我或你&& | 5>1 OR 1>2 | true |
- 修改数据的多个字段值(用其它字段值来判断)
update `表名` set `字段名` = ‘值’,`字段名` = ‘值’ where `其它字段名`=当前的值
update 和 insert 才是我们平时 最常用来 操作数据的 SQL 语句
update 看似 仅能修改数据,实际上 修改的功能,可以延伸为 删除的效果。比如说 把某条 记录的某个字段的值,修改为 0 或 null 那么这个 值 是不是 就相当于 被 干掉了??(答案:是的!可以这样认为!)
3.5 DML → delete 删除数据
语法:delete from 表名 where 条件
delete 删除数据 是 在增删改查里面 最简单的 SQL 语句!
-
删除所有条数据
delete from `表名`
当你再次 添加数据的时候,你会发现 它 是从 4 开始 递增的。
也就是说 delete 删除了 表中所有的数据,但并未 删除 递增计数器 的 计数! -
删除指定的该条数据
delete from `表名` where 条件
TRUNCATE 命令
作用:完全清空 一个 数据表 !!(表的结构和索引约束是不会变的!)
truncate table `表名`
delete 和 TRUNCATE 区别
- 相同点:都能清空数据,而且还不会删除设计表结构。
- 不同点:
- TRUNCATE 重新设置 自增列 计数器会 归 0
- TRUNCATE 不会影响 事务
所以 删除表的数据,也得用 TRUNCATE 删除呀 ~ 高级点儿 哈哈。
当再次 添加数据的时候,就会发现 递增计数器 被 重置了。