Oracle表分割槽

2022-07-29 10:33:11 字數 1705 閱讀 6570

當資料非常龐大的時候,比如,要查詢id<1000的時候,如果不使用表分割槽的話,需要全表掃瞄(判斷每條記錄的id是否小於1000),這樣大大影響了查詢的速度。建立索引是效能調優的方法,同樣,表分割槽也是。每個分割槽都是獨立的乙個段,可以放在不同的表空間下面。

表分割槽有以下優點:

(1)由於將資料分散到各個區中,減少了資料損壞的可能性。

(2)可以對單獨的分割槽進行資料的備份與恢復。

(3)可以將分割槽分散到不同的物理磁碟,來分散io。

(4)提高資料庫管理與效能。

oracle提供了以下幾種分割槽方法:

(1)範圍分割槽(range)  (2)雜湊分割槽(hash)   (3)列表分割槽(list)

(4)範圍-雜湊分割槽   (5)範圍-列表分割槽

range分割槽:就是根據表的某個字段值範圍進行分割槽。 如下:建立分割槽表,根據id的值進行分割槽,如果某些值暫時無法**,可以使用maxvalue。

create

table testpartition(id number,name varchar(100)) partition by

range(id)

( partition p1

values less than (10

), partition p2

values less than (20

), partition p3

values less than (30

), partition p4

values

less than (maxvalue)

)

檢視使用者表分割槽情況:

插入資料:

insert

into testpartition values(15,'

zhengxisheng')

insert

into testpartition values(5,'

jisheng')

insert

into testpartition values(32,'

jidong

')

查詢各個分割槽的資料:

select

*from testpartition partition(p2)

更新資料:報錯如下:

需要成設定可移動的分割槽:

alter

table

testpartition enable row movement

update testpartition set id ='12

'where id ='5

'

再次查詢分割槽p2的資料:

oracle表分割槽設計 ORACLE 分割槽表的設計

分割槽表的概念 分割槽致力於解決支援極大表和索引的關鍵問題。它採用他們分解成較小和易於管理的稱為分割槽的片 piece 的方法。一旦分割槽被定義,sql語句就可以訪問的操作某乙個分割槽而不是整個表,因而提高管理的效率。分割槽對於資料倉儲應用程式非常有效,因為他們常常儲存和分析巨量的歷史資料。分割槽表...

oracle表分割槽設計 ORACLE分割槽表的設計

分割槽表的概念 分割槽致力於解決支援極大表和索引的關鍵問題。它採用他們分解成較小和易於管理的稱為分割槽的片 piece 的方法。一旦分割槽被定義,sql語句就可以訪問的操作某乙個分割槽而不是整個表,因而提高管理的效率。分割槽對於資料倉儲應用程式非常有效,因為他們常常儲存和分析巨量的歷史資料。分割槽表...

oracle表分割槽設計 ORACLE 分割槽表的設計

oracle 分割槽表的設計 分割槽表的概念 分割槽致力於解決支援極大表和索引的關鍵問題。它採用他們分解成較小和易於管理的稱為分割槽的片 piece 的方法。一旦分割槽被定義,sql語句就可以訪問的操作某乙個分割槽而不是整個表,因而提高管理的效率。分割槽對於資料倉儲應用程式非常有效,因為他們常常儲存...