目录
二、TRUNCATE TABLE 和 DELETE FROM
一、COMMIT和ROLLBACK
COMMIT:提交数据,一旦执行COMMIT,数据就会被永久的保存到数据库中,数据不可以进行回滚。
ROLLBACK:回滚数据,执行ROLLBACK可以回滚数据,回滚到最近一次COMMIT之后
二、TRUNCATE TABLE 和 DELETE FROM
共同点:都可以实现对表中所有数据删除,保留表的结构
不同点: TRUNCATE TABLE,执行操作表数据全部清除,不可以进行回滚
DELETE FROM,执行操作表数据全部清除,可以进行回滚
2.1DELETE FROM演示流程
#提交
COMMIT;
#查询表
SELECT * FROM empy;
#执行指令
SET autocommit = FALSE;
#查询表
SELECT * FROM empy;
#删除表数据
DELETE FROM empy;
#查询表
SELECT * FROM empy;
#回滚
ROLLBACK;
#查询表
SELECT * FROM empy;
2.2 TRUNCATE TABLE演示流程
#提交
COMMIT;
#查询表
SELECT * FROM empy;
#执行指令
SET autocommit = FALSE;
#查询表
SELECT * FROM empy;
#删除表数据
TRUNCATE TABLE empy;
#查询表
SELECT * FROM empy;
#回滚
ROLLBACK;
#查询表
SELECT * FROM empy;
三、DDL与DML
DDL:操作一旦操作,不可以回滚,指令 SET autocommit = FALSE对DDL操作失效。
DML:操作一旦操作,不可以回滚,但在DML执行之前,执行SET autocommit = FALSE,可以实现回滚。