Oracle数据处理

来源:互联网 发布:莆田系 知乎 编辑:程序博客网 时间:2024/06/06 06:58

在分析Oracle数据处理之前,先来了解一下SQL可以分为那几种语言
1、DML:data management language 数据管理语言 包括数据的增删改查,在Oracle中我们管crud叫dml
2、DDL : data defination language 数据定义语言 包括表的创建,修改,销毁
3、DCL: data control language 数据控制语言 这里指的是事务的控制,包括 commit rollback

在这里要讨论的就是dml:
1、增(单行,批处理)
2、删(单行与truncate的区别)
3、Oracle支持的隔离机制

1、insert

在单行记录的增加中,已经练习过许多次,在这里主要讨论一下批处理,在插入数据时的约束,在下一篇博文谈到.
如果我们想为一张表一次性添加多行记录时,我们可以利用如下语句:

create table test2asselect empno,ename,sal,sal*12 annualsalfrom empwhere deptno=20;

然后我们再查询里面的信息
这里写图片描述

如果我们不想增加数据,只是想得到相应的表结构的话,看下一篇博文。

2、delete or truncate ?

在删除记录的时候,我们使用过delete和truncate,那么它们两者有何区别呢?
1、delete是单行删除,但是truncate是先把表销毁,然后重新创建
2、delete属于DML,但是truncate属于DDL。DMl与DDL最大的区别在于:DML操作过的记录可以回滚,但是DDL不可以回滚
3、使用delete删除的记录,不会释放空间,但是使用truncate删除的记录会释放空间
4、使用delete删除记录会产生碎片(导致表中记录不连续),但是truncate不会
5、delete的效率高于truncate

3、Oracle支持的隔离机制

在学习jdbc的时候,我们一共学习过4种隔离机制,但是Oracle只支持3种,分别是read committed ,read only,serialiazable ,其中read only是Oracle自己推出的,并不属于SQL99规范,其他两种属于。

0 0