处理数据

sql的类型:

1、DML(Data Menipulation Language数据操作语言) : select insert update delete增删改查

2、DDL(Data Definition Language 数据定义语言) : create alter drop truncate table创建 修改 删除 清空表

create drop view sequence index synonym 创建 ,删除,视图,序列,索引,同义词

3、DCL(Data Control Language 数据控制语言) : grant revoke 授予,撤销(权限)

一:地址符

二:批处理

三:海量拷贝数据(oracle)

1、数据泵

2、sql*Loader

3、外部表

oracle 11g 17讲移动数据


插入更新和删除引起数据的变化:

数据的完整性:定义在表上的约束 (主键外键的约束)

delete 和truncate( 删除、清空数据) 的五个区别

1、delete逐条删除数据  truncate先摧毁表再重新建

2、(根本区别)delete 是DML语句 truncate是DDL语句

DML语句可以回滚(rollback)      DDL不可以回滚(为什么??)

3、delete不会释放空间     truncate可以释放空间

因为delete不是真正把数据删除,换了一个undo表空间(回收站)存起来

4、delete会产生碎片,truncate不会产生

如果删除mary的数据

处理数据_第1张图片

新的数据会插入到高水位线的位置,mary的位置是空着的,会影响查询的速度,所以要去掉碎片

处理数据_第2张图片
处理数据_第3张图片

去掉碎片的两种方法:

一、alter table <表名> move;

二、导出 导入

参考:数据的移动中导入与导出

5、delete可以闪回    truncate不可以(flashback)

哪个删除的方式比较快:  

delete比truncate快,因为delete并没有真正把数据删除

------set feedback off 

set timing on



数据库事务

由以下的部门组成:

1、一个或多个DML语句

2、一个DDL(data definition Language) 数据定义语言语句

3、一个DCL(data control Language)数据控制语言语句

oracle中事务的标志:

1、起始标志:事务中的第一条DML语句

delete=删除数据+开启事务

2、结束标志:提交和回滚都属于结束

提交方式: 

显示方式   commit

隐式方式  正常退出 exit DDL和DCL

回滚方式:

显示方式 rollback

隐式方式 非正常退出 掉电 宕机



数据库的隔离级别

my sql默认的数据库提供4种事务隔离级别:read commited,serializable,read uncommited,repeatable read四种

oracle支持的3个事务隔离级别:read commited   serializable和read only

set transaction read only;---事务处理集只读

只读功能,只能查询,支持并发,不影响效率

你可能感兴趣的:(处理数据)