DCL 中 COMMIT 和 ROLLBACK
- COMMIT:提交数据后,执行COMMIT,数据就无法回滚。数据就会永久保存在数据库中。
- ROLLBACK:回滚数据,执行ROLLBACK,实现数据的回滚,回滚到近一次COMMIT之后。
TRUNCATE TABLE 和 DELETE FROM (不带where)
- 相同处:删除表的所有数据,但保留表的结构
- 差异处:TRUNCATE TABLE :一旦执行不能回滚数据,但是DELETE FROM可以回滚数据
SET autocommit = FALSE(关闭自动提交)
- DDL 语句的操作一旦执行无法回滚,提前设置SET autocommit = FALSE也不行
- DML 语句的操作默认情况下执行后无法回滚,提前设置SET autocommit = FALSE后可以回滚
(DDL:数据库定义语言 DML:数据库操作语言 DCL:数据库控制语言)