update语句的执行过程
https://cloud.tencent.com/developer/article/1828772
delete drop truncate的区别
使用场景:
当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时(always with a where clause), 用 delete.
清理速度:
drop>truncate>delete
相同点
- truncate和不带where子句的delete、以及drop都会删除表内的数据
- drop、truncate都是DDL语句
不同点
- drop会将表结构和数据、索引等全部删除
- delete语句属于DML,不能自动提交,需要commit提交,只会删除对应的数据
truncate语句属于DDL,删除表内容,保留表结构。truncate命令不会被rollback命令撤销。表被清空后,表和表的索引将重新设置成初始值大小,而delete不能。
datetime & timestamp & date的区别
存储大小的区别:
- datetime 8字节,可代表的时间跨度更大;(一般用datetime)
- timestamp 4字节,最多到2038年。
- year,date,time 1字节、3字节、3字节
- 时区:timestamp读取结果会考虑到时区,datetime存什么就是什么
- 默认值:存入null,timestamp自动存储当前时间,datetime储存null
