IT技(ji)術互(hu)動交流平(ping)台

好运彩官网

作者︰Yumiko_Sunny  來源︰IT165收集(ji)  發(fa)布日(ri)期︰2020-02-21 21:59:08

版權聲明︰本文(wen)發(fa)布jia)ttp://www.cnblogs.com/yumiko/,版權由(you)Yumiko_sunny所有,歡迎轉載。轉載時,請在文(wen)章明顯位hui)米 髟 wen)鏈接。若在未經作者同意的情況下,將本文(wen)內容(rong)用于商業用途,將保留追究其(qi)法(fa)律(lv)責任的權利(li)。如果(guo)有問題,請以郵箱方式聯(lian)系作者(793113046@qq.com)。


前(qian)言

本文(wen)著重闡述分(fen)區表的mu)拍睢 攀疲 約ji)常用分(fen)區表的使用方法(fa)及(ji)使用過程中的注意事(shi)項。 對于分(fen)區表的日(ri)常維護方法(fa),如︰he)suo)引的維護、分(fen)區的合並等,將在後續文(wen)章中再詳細介紹(shao)。 本文(wen)涉及(ji)的相應演示,使用的數據(ju)庫(ku)版本為oracle 11.2.0.4。 本文(wen)常用分(fen)區表的使用方法(fa),主要以較(jiao)為常規的範(fan)圍(wei)分(fen)區、列(lie)表分(fen)區、hash分(fen)區以及(ji)組合xi)fen)區為主。 本文(wen)主要涉及(ji)的數據(ju)字zhi)涫油及(ji)X_TAB_PARTITIONS、XX_TAB_SUBPARTITIONS以及(ji)XX_PART_TABLES。  注意示例中,使用紅(hong)色標記的說明。

1、分(fen)區表的mu)攀nbsp;

分(fen)區表就(jiu)是通過使用分(fen)區技(ji)術,將一(yi)張大表,拆(chai)分(fen)成(cheng)多個表分(fen)區(獨立(li)的segment),從(cong)而(er)提升數據(ju)訪問shi)男閱埽 約ji)日(ri)常的可(ke)維護性。 分(fen)區表中,每(mei)個分(fen)區的邏輯結構必須相同。如︰列(lie)名、數據(ju)類型(xing)。 分(fen)區表中,每(mei)個分(fen)區的物理(li)存(cun)儲參數可(ke)以不(bu)同。如︰各個分(fen)區所在的表空間。 對于應用而(er)言完全透gai)鰨 fen)區前(qian)後沒有變化(hua),不(bu)需要進行修改。

需要注意︰he)淙ran)各個分(fen)區可(ke)以存(cun)放在不(bu)同的表空間中,但這些表空間所使用的塊大小(block_size)必須一(yi)hui)/strong>。

需要注意︰除了包含(han)LONG以及(ji)LONG RAW字段的表無法(fa)使用分(fen)區外,其(qi)他(ta)表均(jun)可(ke)以使用分(fen)區,包括含(han)有LOB字段的表

2、分(fen)區表的優點

在維護性方面,可(ke)以在分(fen)區級別,針對單獨的分(fen)區,進行索(suo)引的維護、數據(ju)的加(jia)載以及(ji)備(bei)份恢(hui)復等操作。大大降低了維護時長。 在可(ke)用性方面,由(you)于各個分(fen)區相對獨立(li),當一(yi)個分(fen)區處于維護或者出(chu)現故(gu)障時,不(bu)會影響到其(qi)他(ta)分(fen)區的正常使用。 在性能方面,oracle對于用戶的請求,只檢索(suo)需要的分(fen)區,從(cong)而(er)提升性能。 在其(qi)他(ta)方面,由(you)于分(fen)區表對于用戶是透gai)韉模 虼耍 bu)需要在分(fen)區後,對代碼進行修改。

3、分(fen)區鍵的簡介

分(fen)區鍵就(jiu)是決定表中的數據(ju)行,屬于哪一(yi)個分(fen)區的一(yi)組數據(ju)列(lie)。在執行DML操作時,ORACLE會根(gen)據(ju)分(fen)區鍵選擇分(fen)區。

4、常用分(fen)區表簡介及(ji)使用方法(fa)(含(han)注意事(shi)項)

好运彩官网

範(fan)圍(wei)分(fen)區特點︰
範(fan)圍(wei)分(fen)區主要依據(ju)分(fen)區鍵定義(yi)時bei)chu)的鍵值(zhi)範(fan)圍(wei),根(gen)據(ju)實(shi)際shi)娜 zhi),進行分(fen)區的nan)≡瘢 er)在相應分(fen)區中存(cun)儲數據(ju)。
範(fan)圍(wei)分(fen)區比(bi)較(jiao)合適存(cun)在以數字為導向,方便進行數字範(fan)圍(wei)劃分(fen)zhi)氖ju)列(lie)。如︰員工表的雇佣日(ri)期列(lie)、工資列(lie)等。
範(fan)圍(wei)分(fen)區的數據(ju)分(fen)布可(ke)能不(bu)均(jun)勻。

範(fan)圍(wei)分(fen)區定義(yi)規則︰
1、在定義(yi)範(fan)圍(wei)分(fen)區時,每(mei)個分(fen)區定義(yi)必須使用 values less than(value)子(zi)句。其(qi)中(value)表示該(gai)分(fen)區的上(shang)限值(zhi)。
2、在定義(yi)範(fan)圍(wei)分(fen)區時,最後一(yi)個分(fen)區可(ke)以是values less than(maxvalue)。其(qi)中(maxvalue)表示該(gai)分(fen)區存(cun)儲高(gao)于其(qi)他(ta)分(fen)區上(shang)限值(zhi)的數據(ju)行。

示例︰

示例涉及(ji)的測試數據(ju)源,來自于ORACLE數據(ju)庫(ku)的測試用戶scott下的emp表。

emp表的大致(zhi)數據(ju)情況如下︰

--測試表emp的數據(ju)總記錄條(tiao)數為14條(tiao)Yumiko@sunny >select count(*) from emp; COUNT(*)---------- 14Yumiko@sunny >select * from emp; EMPNO ENAME JOB  MGR HIREDATE  SAL COMM DEPTNO---------- ---------- --------- ---------- -------------- ---------- ---------- ---------- 7369 SMITH CLERK  7902 17-12月-80  800   20 7499 ALLEN SALESMAN 7698 20-2月 -81  1600 300  30 7521 WARD SALESMAN 7698 22-2月 -81  1250 500  30 7566 JONES MANAGER  7839 02-4月 -81  2975   20 7654 MARTIN SALESMAN 7698 28-9月 -81  1250 1400  30 7698 BLAKE MANAGER  7839 01-5月 -81  2850   30 7782 CLARK MANAGER  7839 09-6月 -81  2450   10 7788 SCOTT ANALYST  7566 19-4月 -87  3000   20 7839 KING PRESIDENT  17-11月-81  5000   10 7844 TURNER SALESMAN 7698 08-9月 -81  1500  0  30 7876 ADAMS CLERK  7788 23-5月 -87  1100   20 7900 JAMES CLERK  7698 03-12月-81  950   30 7902 FORD ANALYST  7566 03-12月-81  3000   20 7934 MILLER CLERK  7782 23-1月 -82  1300   10已選擇14行。

下面采用範(fan)圍(wei)分(fen)區的方法(fa)創建(jian)分(fen)區,並將emp表的數據(ju)導入該(gai)分(fen)區表。

這里,使用HIREDATE列(lie)作為分(fen)區鍵進行分(fen)區操作。

建(jian)議,使用dbms_metadata.get_ddl的方法(fa)進行emp表結構創建(jian)語法(fa)的提取工作,並進而(er)修改。

Yumiko@sunny >CREATE TABLE 'EMPLOYEE_RANGE_PART' 2 ( 'EMPNO' NUMBER(4,0), 3 'ENAME' VARCHAR2(10), 4 'JOB' VARCHAR2(9), 5 'MGR' NUMBER(4,0), 6 'HIREDATE' DATE, 7 'SAL' NUMBER(7,2), 8 'COMM' NUMBER(7,2), 9 'DEPTNO' NUMBER(2,0) 10 ) 11 PARTITION BY RANGE (HIREDATE) 12 ( 13 PARTITION EMPLOYEE_PART01 VALUES LESS THAN (TO_DATE('2020-02-21','yyyy-mm-dd')) 14 TABLESPACE test_tbs_01, 15 PARTITION EMPLOYEE_PART02 VALUES LESS THAN (TO_DATE('2020-02-21','yyyy-mm-dd')) 16 TABLESPACE test_tbs_02, 17 PARTITION EMPLOYEE_PART03 VALUES LESS THAN (MAXVALUE) 18 TABLESPACE test_tbs_03 19 ); 表已創建(jian)。Yumiko@sunny >insert into EMPLOYEE_RANGE_PART select * from emp;已創建(jian) 14 行。Yumiko@sunny >commit;提交完成(cheng)。

查看此時分(fen)區表的狀態(tai),以及(ji)emp表的數據(ju)在分(fen)區表中的分(fen)布情況。

注意,新建(jian)的數據(ju)表,統計信息未必收集(ji),可(ke)通過analyze table tablename compute statistics進行收集(ji)。

Yumiko@sunny >select TABLE_NAME,PARTITIONING_TYPE,PARTITION_COUNT,STATUS 2 from dba_part_tables 3 where TABLE_NAME='EMPLOYEE_RANGE_PART';TABLE_NAME   PARTITION PARTITION_COUNT STATUS------------------------------ --------- --------------- --------EMPLOYEE_RANGE_PART  RANGE   3 VALIDYumiko@sunny >select PARTITION_NAME,NUM_ROWS,TABLESPACE_NAME,SEGMENT_CREATED 2 from dba_tab_partitions 3 where TABLE_NAME='EMPLOYEE_RANGE_PART';PARTITION_NAME   NUM_ROWS TABLESPACE_NAME  SEGM------------------------------ ---------- ------------------------------ ----EMPLOYEE_PART03    3 TEST_TBS_03   YESEMPLOYEE_PART02   10 TEST_TBS_02   YESEMPLOYEE_PART01    1 TEST_TBS_01   YES

查詢單獨分(fen)區的數據(ju)信息。

Yumiko@sunny >select * from EMPLOYEE_RANGE_PART partition(EMPLOYEE_PART01); EMPNO ENAME JOB  MGR HIREDATE  SAL COMM DEPTNO---------- ---------- --------- ---------- -------------- ---------- ---------- ---------- 7369 SMITH CLERK  7902 17-12月-80  800   20

好运彩官网

列(lie)表分(fen)區特點︰
列(lie)表分(fen)區主要依據(ju)分(fen)區鍵定義(yi)時bei)chu)的取值(zhi)列(lie)表,根(gen)據(ju)實(shi)際shi)娜 zhi),進行分(fen)區的nan)≡瘢 er)在相應分(fen)區中存(cun)儲數據(ju)。
列(lie)表分(fen)區比(bi)較(jiao)合適列(lie)唯(wei)一(yi)取值(zhi)有限,且較(jiao)為固定的數據(ju)列(lie)。如︰員工表的部(bu)門列(lie)。
列(lie)表分(fen)區的數據(ju)分(fen)布可(ke)能不(bu)均(jun)勻。

列(lie)表分(fen)區定義(yi)規則︰
1、在定義(yi)範(fan)圍(wei)分(fen)區時,每(mei)個分(fen)區定義(yi)必須使用 values('value01','value02'....)子(zi)句。表示該(gai)分(fen)區存(cun)儲包含(han)相關(guan)value值(zhi)的數據(ju)行。
2、在定義(yi)範(fan)圍(wei)分(fen)區時,最後一(yi)個分(fen)區可(ke)以是values(DEFAULT)。表示該(gai)分(fen)區存(cun)儲未在其(qi)他(ta)分(fen)區定義(yi)的數據(ju)行。

示例︰

本示例數據(ju)來源,與上(shang)一(yi)節(jie)相同,均(jun)為emp表。

本示例中,將使用JOB列(lie)作為分(fen)區鍵進行分(fen)區操作。

首(shou)先,看一(yi)下JOB列(lie)中,目前(qian)涉及(ji)的工作分(fen)類有哪些。

Yumiko@sunny >select job,count(*) job from emp group by job ;JOB  JOB--------- ----------CLERK  4SALESMAN  4PRESIDENT  1MANAGER  3ANALYST  2

從(cong)you)shang)面的信息可(ke)以看出(chu),目前(qian)涉及(ji)五種職位。

下面采用列(lie)表分(fen)區的方法(fa)進行分(fen)區表的創建(jian),並倒入emp中的數據(ju)。其(qi)中,

涉及(ji)PRESIDENT,MANAGER以及(ji)ANALYST三種職位的數據(ju),存(cun)放在分(fen)區一(yi);

涉及(ji)CLERK職位的數據(ju),存(cun)放在分(fen)區二;

涉及(ji)SALESMAN職位的數據(ju),以及(ji)未來可(ke)能出(chu)現zhi)男輪拔壞氖ju),存(cun)放在分(fen)區三;

CREATE TABLE 'EMPLOYEE_LIST_PART' 2 ( 'EMPNO' NUMBER(4,0), 3 'ENAME' VARCHAR2(10), 4 'JOB' VARCHAR2(9), 5 'MGR' NUMBER(4,0), 6 'HIREDATE' DATE, 7 'SAL' NUMBER(7,2), 8 'COMM' NUMBER(7,2), 9 'DEPTNO' NUMBER(2,0) 10 ) 11 PARTITION BY LIST (JOB) 12 ( 13 PARTITION EMPLOYEE_PART01 VALUES ('PRESIDENT','MANAGER','ANALYST') 14 TABLESPACE test_tbs_01, 15 PARTITION EMPLOYEE_PART02 VALUES ('CLERK') 16 TABLESPACE test_tbs_02, 17 PARTITION EMPLOYEE_PART03 VALUES (DEFAULT) 18 TABLESPACE test_tbs_03 19 ); 表已創建(jian)。Yumiko@sunny >insert into EMPLOYEE_LIST_PART select * from emp;已創建(jian) 14 行。Yumiko@sunny >commit;提交完成(cheng)。

首(shou)先觀察(cha)一(yi)下EMPLOYEE_PART02分(fen)區。

Yumiko@sunny >select SEGMENT_NAME,PARTITION_NAME,HEADER_FILE,HEADER_BLOCK,BLOCKS 2 from dba_segments where PARTITION_NAME='EMPLOYEE_PART02';SEGMENT_NAME  PARTITION_NAME HEADER_FILE HEADER_BLOCK BLOCKS-------------------- -------------------- ----------- ------------ ----------EMPLOYEE_LIST_PART EMPLOYEE_PART02  10  1169 1024EMPLOYEE_RANGE_PART EMPLOYEE_PART02  10  145 1024

從(cong)you)shang)面的查詢結果(guo)可(ke)以看到,前(qian)面創建(jian)的兩張分(fen)區表,都采用相同的EMPLOYEE_PART02名字,進行了分(fen)區的命(ming)名。

雖(sui)然(ran)分(fen)區均(jun)處于相同的表空間下,但相互(hu)之前(qian)並未ci)艿接跋 /p>

由(you)此可(ke)以得出(chu)結論︰

1、對于普通分(fen)區表,只要不(bu)是同一(yi)張的分(fen)區表,分(fen)區的命(ming)名可(ke)以相同;

2、對于組合xi)fen)區表,同一(yi)張表的子(zi)分(fen)區命(ming)名,不(bu)能夠相同。(創建(jian)時會有提示,此處只給出(chu)結論,不(bu)再進行演示)

查看此時分(fen)區表的狀態(tai)以及(ji)數據(ju)在分(fen)區間的分(fen)布情況

Yumiko@sunny >select TABLE_NAME,PARTITIONING_TYPE,PARTITION_COUNT,STATUS 2 from dba_part_tables 3 where TABLE_NAME='EMPLOYEE_LIST_PART';TABLE_NAME   PARTITION PARTITION_COUNT STATUS------------------------------ --------- --------------- --------EMPLOYEE_LIST_PART  LIST   3 VALIDYumiko@sunny >select PARTITION_NAME,NUM_ROWS,TABLESPACE_NAME,SEGMENT_CREATED 2 from dba_tab_partitions 3 where TABLE_NAME='EMPLOYEE_LIST_PART';PARTITION_NAME  NUM_ROWS TABLESPACE_NAME  SEGM-------------------- ---------- ------------------------------ ----EMPLOYEE_PART03  4 TEST_TBS_03   YESEMPLOYEE_PART02  4 TEST_TBS_02   YESEMPLOYEE_PART01  6 TEST_TBS_01   YES

查詢單獨分(fen)區的數據(ju)信息。

Yumiko@sunny >select * from EMPLOYEE_LIST_PART partition(EMPLOYEE_PART01); EMPNO ENAME JOB  MGR HIREDATE  SAL COMM DEPTNO---------- ---------- --------- ---------- -------------- ---------- ---------- ---------- 7566 JONES MANAGER  7839 02-4月 -81  2975   20 7698 BLAKE MANAGER  7839 01-5月 -81  2850   30 7782 CLARK MANAGER  7839 09-6月 -81  2450   10 7788 SCOTT ANALYST  7566 19-4月 -87  3000   20 7839 KING PRESIDENT  17-11月-81  5000   10 7902 FORD ANALYST  7566 03-12月-81  3000   20已選擇6行。

好运彩官网

HASH分(fen)區特點︰
HASH分(fen)區主要通過hash算法(fa)確fan)ㄏ嚶κju)行應該(gai)被存(cun)放到哪mu)齜fen)區中。
HASH分(fen)區比(bi)較(jiao)適合列(lie)差異值(zhi)很多的數據(ju)列(lie)。

HASH分(fen)區的注意事(shi)項︰
對于HASH分(fen)區,無法(fa)控制一(yi)條(tiao)數據(ju)在分(fen)區間的具體分(fen)布。具體分(fen)布jia)you)hash算法(fa)決定。
對于HASH分(fen)區,如果(guo)更(geng)改分(fen)區的數量,將導致(zhi)所有數據(ju)在分(fen)區間的重新分(fen)布

HASH分(fen)區定義(yi)規則︰
在定義(yi)HASH分(fen)區時,其(qi)分(fen)區數量應為2的N次方,如︰2,4,8,16等

示例說明︰

此示例的數據(ju)源依然(ran)來源cong)mp表。

關(guan)于HASH分(fen)區的創建(jian),有標準寫法(fa)以及(ji)簡易寫法(fa)。

標準寫法(fa)示例︰

Yumiko@sunny >CREATE TABLE 'EMPLOYEE_HASH_PART' 2 ( 'EMPNO' NUMBER(4,0), 3 'ENAME' VARCHAR2(10), 4 'JOB' VARCHAR2(9), 5 'MGR' NUMBER(4,0), 6 'HIREDATE' DATE, 7 'SAL' NUMBER(7,2), 8 'COMM' NUMBER(7,2), 9 'DEPTNO' NUMBER(2,0) 10 ) 11 PARTITION BY HASH (ENAME) 12 ( 13 PARTITION EMPLOYEE_PART01 TABLESPACE test_tbs_01, 14 PARTITION EMPLOYEE_PART02 TABLESPACE test_tbs_02 15 ); 表已創建(jian)。Yumiko@sunny >insert into EMPLOYEE_HASH_PART select * from emp;已創建(jian) 14 行。Yumiko@sunny >commit;提交完成(cheng)。

查看標準寫法(fa)下,HASH分(fen)區表的狀態(tai)及(ji)數據(ju)分(fen)布情況

Yumiko@sunny >select TABLE_NAME,PARTITIONING_TYPE,PARTITION_COUNT,STATUS 2 from dba_part_tables 3 where TABLE_NAME='EMPLOYEE_HASH_PART';TABLE_NAME   PARTITION PARTITION_COUNT STATUS------------------------------ --------- --------------- --------EMPLOYEE_HASH_PART  HASH   2 VALIDYumiko@sunny >select PARTITION_NAME,NUM_ROWS,TABLESPACE_NAME,SEGMENT_CREATED 2 from dba_tab_partitions 3 where TABLE_NAME='EMPLOYEE_HASH_PART';PARTITION_NAME  NUM_ROWS TABLESPACE_NAME  SEGM-------------------- ---------- ------------------------------ ----EMPLOYEE_PART02  6 TEST_TBS_02   YESEMPLOYEE_PART01  8 TEST_TBS_01   YES

簡單寫法(fa)示例︰

Yumiko@sunny >CREATE TABLE 'EMPLOYEE_HASH_PART_SAMPLE' 2 ( 'EMPNO' NUMBER(4,0), 3 'ENAME' VARCHAR2(10), 4 'JOB' VARCHAR2(9), 5 'MGR' NUMBER(4,0), 6 'HIREDATE' DATE, 7 'SAL' NUMBER(7,2), 8 'COMM' NUMBER(7,2), 9 'DEPTNO' NUMBER(2,0) 10 ) 11 PARTITION BY HASH (ENAME) PARTITIONS 2 12 STORE IN (test_tbs_01,test_tbs_02);表已創建(jian)。Yumiko@sunny >select PARTITION_NAME,NUM_ROWS,TABLESPACE_NAME,SEGMENT_CREATED 2 from dba_tab_partitions 3 where TABLE_NAME='EMPLOYEE_HASH_PART_SAMPLE';PARTITION_NAME  NUM_ROWS TABLESPACE_NAME  SEGM-------------------- ---------- ------------------------------ ----SYS_P11074   6 TEST_TBS_02   YESSYS_P11073   8 TEST_TBS_01   YES

從(cong)you)shang)圖可(ke)以看到,相較(jiao)于標準寫法(fa),簡單寫法(fa)創建(jian)的分(fen)區名字,由(you)oracle自動指定。

好运彩官网

組合xi)fen)區的特點︰
組合xi)fen)區中,主要通過在不(bu)同列(lie)上(shang),使用“範(fan)圍(wei)分(fen)區”、“列(lie)表分(fen)區”以及(ji)“HASH分(fen)區”不(bu)同組合xi)絞劍 er)實(shi)現組合xi)fen)區。
組合xi)fen)區中,分(fen)區本身沒有相應的segment,可(ke)以認為是一(yi)個邏輯容(rong)器,只有子(zi)分(fen)區擁有實(shi)際shi)egment,用于存(cun)放數據(ju)。


組合xi)fen)區的注意事(shi)項︰
在11g以前(qian),組合xi)fen)區主要有兩種組合xi)絞劍ldquo;RANGE-HASH”以及(ji)“RANGE-LIST”。
在11g以後,組合xi)fen)區新增了四種組合xi)絞劍ldquo;RANGE-RANGE”、“LIST-RANGE”、“LIST-HASH”以及(ji)“LIST-LIST”。

示例說明︰

關(guan)于本示例的數據(ju)源依然(ran)選擇emp表為參考(kao)。

關(guan)于本示例的nan)菔荊  捎IST-LIST的組合xi)絞劍 唇jian)組合xi)fen)區。

關(guan)于其(qi)他(ta)組合xi)絞叫?錄純ke)。

示例︰

首(shou)先按照部(bu)門(deptno)進行分(fen)區,針對相同部(bu)門,再按照職位(JOB)是否(fu)為manager再次進行子(zi)分(fen)區。具體如下:

Yumiko@sunny >CREATE TABLE 'EMPLOYEE_LIST_LIST_PART' 2 ( 'EMPNO' NUMBER(4,0), 3 'ENAME' VARCHAR2(10), 4 'JOB' VARCHAR2(9), 5 'MGR' NUMBER(4,0), 6 'HIREDATE' DATE, 7 'SAL' NUMBER(7,2), 8 'COMM' NUMBER(7,2), 9 'DEPTNO' NUMBER(2,0) 10 ) 11 PARTITION BY LIST (DEPTNO) 12 SUBPARTITION BY LIST (JOB) 13 ( 14 PARTITION EMPLOYEE_DEPTNO_10 VALUES (10) TABLESPACE test_tbs_01 15 ( SUBPARTITION EMPLOYEE_10_JOB_MAGAGER VALUES ('MANAGER'), 16 SUBPARTITION EMPLOYEE_10_JOB_DEFAULT VALUES (DEFAULT) 17 ), 18 PARTITION EMPLOYEE_DEPTNO_20 VALUES (20) TABLESPACE test_tbs_02 19 ( SUBPARTITION EMPLOYEE_20_JOB_MAGAGER VALUES ('MANAGER'), 20 SUBPARTITION EMPLOYEE_20_JOB_DEFAULT VALUES (DEFAULT) 21 ), 22 PARTITION EMPLOYEE_DEPTNO_OTHERS VALUES (DEFAULT) TABLESPACE test_tbs_03 23 ( SUBPARTITION EMPLOYEE_30_JOB_MAGAGER VALUES ('MANAGER'), 24 SUBPARTITION EMPLOYEE_30_JOB_DEFAULT VALUES (DEFAULT) 25 ) 26 );表已創建(jian)。Yumiko@sunny >insert into EMPLOYEE_LIST_LIST_PART select * from emp;已創建(jian) 14 行。Yumiko@sunny >commit;提交完成(cheng)。

需要注意︰關(guan)于表空間(tablespace)的指定,可(ke)以放在分(fen)區一(yi)級指定,也bu)ke)以放在子(zi)分(fen)區一(yi)級指定。

本示例中,表空間的指定,放在了分(fen)區一(yi)級指定。對于子(zi)分(fen)區直接套zi)梅fen)區指定。

查看分(fen)區創建(jian)情況

Yumiko@sunny >select PARTITION_NAME,SUBPARTITION_COUNT,COMPOSITE,NUM_ROWS, 2 TABLESPACE_NAME,SEGMENT_CREATED 3 from dba_tab_partitions 4 where TABLE_NAME='EMPLOYEE_LIST_LIST_PART';PARTITION_NAME  SUBPARTITION_COUNT COM NUM_ROWS TABLESPACE_NAME SEGM----------------------- ------------------ --- ---------- --------------- ----EMPLOYEE_DEPTNO_OTHERS   2 YES  6 TEST_TBS_03 NONEEMPLOYEE_DEPTNO_20   2 YES  5 TEST_TBS_02 NONEEMPLOYEE_DEPTNO_10   2 YES  3 TEST_TBS_01  NONEYumiko@sunny >select TABLE_NAME,PARTITIONING_TYPE,PARTITION_COUNT, 2 SUBPARTITIONING_TYPE,STATUS 3 from dba_part_tables 4 where TABLE_NAME='EMPLOYEE_LIST_LIST_PART';TABLE_NAME   PARTITION PARTITION_COUNT SUBPARTIT STATUS------------------------------ --------- --------------- --------- --------EMPLOYEE_LIST_LIST_PART LIST   3 LIST VALID

從(cong)you)shang)圖可(ke)以看到,對于組合xi)fen)區,雖(sui)然(ran)成(cheng)功創建(jian)了分(fen)區,但oracle並未對分(fen)區一(yi)級,分(fen)配實(shi)際shi)egment。

下面再觀察(cha)下子(zi)分(fen)區的創建(jian)情況︰

Yumiko@sunny >select PARTITION_NAME,SUBPARTITION_NAME, 2 TABLESPACE_NAME,NUM_ROWS,SEGMENT_CREATED 3 from USER_TAB_SUBPARTITIONS 4 where TABLE_NAME='EMPLOYEE_LIST_LIST_PART';PARTITION_NAME  SUBPARTITION_NAME  TABLESPACE_NAME NUM_ROWS SEG----------------------- ------------------------------ --------------- ---------- ---EMPLOYEE_DEPTNO_10 EMPLOYEE_10_JOB_MAGAGER TEST_TBS_01  1 YESEMPLOYEE_DEPTNO_10 EMPLOYEE_10_JOB_DEFAULT TEST_TBS_01  2 YESEMPLOYEE_DEPTNO_20 EMPLOYEE_20_JOB_MAGAGER TEST_TBS_02  1 YESEMPLOYEE_DEPTNO_20 EMPLOYEE_20_JOB_DEFAULT TEST_TBS_02  4 YESEMPLOYEE_DEPTNO_OTHERS EMPLOYEE_30_JOB_MAGAGER TEST_TBS_03  1 YESEMPLOYEE_DEPTNO_OTHERS EMPLOYEE_30_JOB_DEFAULT TEST_TBS_03  5 YES

從(cong)you)shang)圖可(ke)以明顯看到,針對子(zi)分(fen)區一(yi)級,oracle確實(shi)分(fen)配了實(shi)際shi)egment用于數據(ju)的存(cun)儲。

此外,需要再次強調一(yi)點,對于同一(yi)張組合xi)fen)區表而(er)言,子(zi)分(fen)區的名字不(bu)能相同,即ci)共bu)在相同的分(fen)區里

  • 好运彩官网

About IT165 - 大发11选5官网廣(guang)告服務 - 隱私聲明 - 版權申明 - 免責條(tiao)款 - 網(wang)站地圖 - 網(wang)友投稿 - 聯(lian)系方式
本站內容(rong)來自于互(hu)聯(lian)網(wang),僅供用于網(wang)絡技(ji)術學習(xi),學習(xi)中請遵循(xun)相關(guan)法(fa)律(lv)法(fa)規
好运彩官网 | 下一页