4.DCL 中COMMIT 和ROLLBACK
#7.DCL 中COMMIT 和ROLLBACK
#commit:提交数据。一旦执行commit,则数据就被永久的保存在了数据库中,
#意味着数据不可以回滚
#rollback:回滚数据,一旦执行rollback,则可以实现数据的回滚
#8.对比TRUNCATE TABLE 和 DELETE FROM
# 相同点:都可以实现对表中所有数据的删除,同时保留表结构
# 不同点:
# TRUNCATE TABLE:一旦执行此操作表数据全部清除,数据是不可以回滚的
# DELETE FROM:一旦执行此操作表数据可以全部清除(不带where),数据可以回滚
/*
9.DDL和DML的说明
①DDL的操作一旦执行,就不可回滚,set autocommit=false 对DDL失效
因为在执行完DLL操作之后,一定会执行一次commit,而此commit操作不受
set autocommit=false影响
②DML的操作默认情况,一旦执行,也是不可回滚,但是在执行DML之前,执行
了set autocommit=false,则执行的DML操作就可以实现回滚
*/
#演示:DELETE FROM
#1
COMMIT;
#2
SELECT *
FROM myemp3;
#3
SET autocommit=FALSE;
#4
DELETE FROM myemp3;
#5
SELECT *
FROM myemp3;
#6
ROLLBACK;
#7
SELECT *
FROM myemp3;
#演示:TRUNCATE TABLE
#1
COMMIT;
#2
SELECT *
FROM myemp3;
#3
SET autocommit=FALSE;
#4
TRUNCATE TABLE myemp3;
#5
SELECT *
FROM myemp3;
#6
ROLLBACK;
#7
SELECT *
FROM myemp3;