DML、DDL、DCL、Transaction

 转http://www.talentdigger.cn/home/space.php?uid=3821&do=blog&id=19384

 

1. SQL语句分类(五类):

Select 语句

DML:insert \ update \ delete \ merge (Oracle 独有,用于数据库同步)

DDL:create \ drop \ alter \ truncate \ rename \ comment

DCL:grant \ revoke

Transaction :commit \ rollback \ savepoint



2. 数据库事务由以下的部分组成:

•         一个或多个DML 语句

•         一个 DDL 语句

•         一个 DCL 语句

3. 事务的开始与结束:

•         以第一个 DML 语句的执行作为开始

•         以下面的其中之一作为结束:

–        COMMIT 或 ROLLBACK 语句

–        DDL 或 DCL 语句(自动提交)

–        用户会话正常结束

–        系统异常终止

4.事务进程

•         自动提交在以下情况中执行:

–     DDL 语句。

–     DCL 语句。

–     不使用 COMMIT 或 ROLLBACK 语句提交或回滚,正常结束会话。

•         会话异常结束或系统异常会导致自动回滚。

举例:

5. insert into emp(empno,ename,sal) values(7788,’KING’,5000);

  Insert into emp_bak as (select * from emp);

Update emp set sal = sal +500 where empno = 7788;

Delete [from] emp where empno =7788;

6.create table emp_bak as (select * from emp); (创建表)

Drop table emp_bak; (删除表) (drop 语句不能回滚)

Alter table emp_bak drop column comm.; (修改表结构)

Alter table emp_bak add column comm. number;

Alter table emp_bak set unused column comm.;

Alter table emp_bak drop unused columns;

Truncate table emp;(删除emp 表中的所有数据,并释放表的存储空间。Trancate语句不能回滚)

Rename emp to employee;

Comment on table emp is ‘Employee information’;

7. savepoint A;

Rollback to A; commit;

8. grant connect to scott;

Revoke connect from scott;



9.删除表(drop 语句) 要点:

•         数据库结构都被删除

•         所有正在运行的相关事物被提交

•         所有相关索引被删除

•        DROP TABLE 语句不能回滚

10. 清空表:(Truncate 与delete的不同)

•        TRUNCATE TABLE 语句:

–     删除表中所有的数据

–     释放表的存储空间

•        TRUNCATE语句不能回滚

•         可以使用 DELETE 语句删除数据

•         delete产生rollback,如果删除大数据量的表,速度会很慢,同时会占用很多的rollback segments .

•         truncate 是DDL操作,不产生rollback,速度快一些

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值