日期:2014-05-16 浏览次数:20489 次
?
在ORACLE里如果遇到特别大的表,可以使用分区的表来改变其应用程序的性能。 在ORACLE里如果遇到特别大的表,可以使用分区的表来改变其应用程序的性能。 某公司的每年产生巨大的销售记录,DBA向公司建议每季度的数据放在一个分区内,以下示范的是该公司1999年的数据(假设每月产生30M的数据),操作如下: 范围分区表: CREATE TABLE sales (invoice_no NUMBER, ... sale_date DATE NOT NULL ) PARTITION BY RANGE (sale_date) (PARTITION sales1999_q1 VALUES LESS THAN (TO_DATE(‘1999-04-01’,’YYYY-MM-DD’) TABLESPACE ts_sale1999q1, PARTITION sales1999_q2 VALUES LESS THAN (TO_DATE(‘1999-07-01’,’YYYY-MM-DD’) TABLESPACE ts_sale1999q2, PARTITION sales1999_q3 VALUES LESS THAN (TO_DATE(‘1999-10-01’,’YYYY-MM-DD’) TABLESPACE ts_sale1999q3, PARTITION sales1999_q4 VALUES LESS THAN (TO_DATE(‘2000-01-01’,’YYYY-MM-DD’) TABLESPACE ts_sale1999q4 ); --values less than (maxvalue) 列表分区表: create table emp ( empno number(4), ename varchar2(30), location varchar2(30)) partition by list (location) (partition p1 values ('北京'), partition p2 values ('上海','天津','重庆'), partition p3 values ('广东','福建') partition p0 values (default) ); 哈希分区: create table emp ( empno number(4), ename varchar2(30), sal number) partition by hash (empno) partitions 8
1.1 分区表PARTITION table
1.1.1 分区表的建立: