posts - 60,comments - 71,trackbacks - 0
          本文來自:http://www.aygfsteel.com/improviser/archive/2007/10/01/150073.html

              Oracle中提供了對表進行分區(qū)的機制,通過表分區(qū),可以將表空間中數(shù)據(jù)按照某種方式分別存放到特定的分區(qū)中。表分區(qū)的作用:平衡IO操作,分區(qū)均勻,提高效率。

             Oracle中表分區(qū)方法有:范圍分區(qū)法、散列分區(qū)法、復合分區(qū)法、列表分區(qū)法。

           范圍分區(qū):
          語法
          Partition  by  range(); 適合數(shù)值型或日期型
           
          示例:
           1 create table Student
           2(
           3     Studentid integer not null,
           4     Studentname varchar2(20),
           5     Score integer
           6)
           7 Partition by range(Score)
           8(
           9     Partition p1 values less than(60),
          10     Partition p2 values less than(75),
          11     Partition p3 values less than(85),
          12     Partition p4 values less than(maxvalue)
          13 );

            散列分區(qū)法:根據(jù)Oracle內(nèi)部散列算法存儲,語法 Partition by hash();
           
          實例:
           1 create table department
           2 (
           3     Deptno int,
           4     Deptname varchar2(24)
           5 )
           6 Partition by hash(deptno)
           7 (
           8     Partition p1,
           9     Partition p2
          10 );

            復合分區(qū)法:由上面兩種方法復合而成
            示例:

           1 create table salgrade
           2 (
           3     grade number,
           4     losal number,
           5     hisal number
           6 )
           7 Partition by range(grade)
           8 Subpartition by hash(losal,hisal)
           9 (
          10     Partition p1 values less than(10),
          11       (subpartition sp1,subpartition sp2),
          12     Partition p2 values less than(20),
          13       (subpartition sp3,subpartition sp4)
          14 )

            列表分區(qū)法:適合字符型 語法Partition by list()
            實例:

           1 create table customer
           2 (
           3     custNo int,
           4     custname varchar(20),
           5     custState varchar(20)
           6 )
           7 Partition by list(custState)
           8 (
           9     Partition saia values('中國','韓國','日本'),
          10     Partition Europe values('英國','俄國','法國'),
          11     Partition ameria values('美國','加拿大','墨西哥'),
          12 );
          13     

          表分區(qū)維護:

          添加分區(qū):alter table student add partition p5 values less than(120);
          刪除分區(qū):alter table student drop partition p4;
          截斷分區(qū):alter table student truncate partition p5;
          合并分區(qū):alter table student merge partitions p3,p4 into partition p6;
          posted on 2008-06-18 17:28 henry1451 閱讀(377) 評論(0)  編輯  收藏 所屬分類: Oracle技術
          主站蜘蛛池模板: 孟州市| 营口市| 南丰县| 麻江县| 赤峰市| 枣庄市| 贵南县| 滦平县| 鄂温| 阳东县| 平远县| 金华市| 收藏| 双流县| 平度市| 焉耆| 桓仁| 许昌市| 建昌县| 阿克苏市| 民权县| 阿合奇县| 浏阳市| 昭苏县| 杭州市| 石阡县| 府谷县| 长治县| 逊克县| 湘乡市| 信阳市| 花垣县| 新宁县| 沅陵县| 武宁县| 晋江市| 南通市| 乌什县| 达州市| 胶南市| 达孜县|