oracle分区交换有啥好处,分区交换的速度为什么快?
Oracle的分區交換功能,用來實現對數據“滑動窗口”操作,就是可以把數據從分區表中指定分區移出到一個表,或把一個表的數據移入到指定的分區中。[@more@]
分區交換的速度是非常快速的,只是數據字典的更新,在移動過程中,數據行的rowid都不會發生變化。實驗過程如下:
1. 創建分區表
SQL> Create Table range_example(Id Number,Name Varchar2(20),DeptNO Varchar2(20))
2 Partition By List(DeptNO)
3 (
4 Partition p_mz Values('MZ'),
5 Partition p_zy Values('ZY')
6 )
7 ;
Table created
2.插入數據,表有兩個分區
SQL> insert into range_example values
2 (1,'hxb','MZ');
1 row inserted
SQL> insert into range_example values
2 (1,'xzh','ZY');
1 row inserted
SQL> commit;
Commit complete
3.添加一個分區,以便做exhange操作
SQL> alter table range_example add partition p_qt values('QT');
Table altered
4.創建交換數據的表
SQL> create table emp(Id Number,Name Varchar2(20),DeptNO Varchar2(20))
2 ;
Table created
SQL> insert into emp values
2 (1,'phj','QT');
1 row inserted
SQL> commit;
Commit complete
5.查詢rowid
SQL> select rowid from emp;
ROWID
------------------
AAASygAAHAACemwAAA
6.執行交換操作
SQL> alter table range_example
2 exchange partition p_qt
3 with table emp
4 without validation
5 ;
Table altered
7.分區交換后,發現rowid沒有發生變化
SQL> select * from range_example partition(p_qt);
ID NAME DEPTNO
---------- -------------------- --------------------
1 phj QT
SQL> select rowid from range_example partition(p_qt);
ROWID
------------------
AAASygAAHAACemwAAA
SQL>
總結
以上是生活随笔為你收集整理的oracle分区交换有啥好处,分区交换的速度为什么快?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: krsort函数怎么用php,krsor
- 下一篇: 比亚迪宋plus+dmi剐蹭自己修影响三