表或索引的所有分区必须具备相同的逻辑结构,例如列名(column name),数据类型(datatype),及数据约束(constraint)等,但每个分区的物理属性可以不同,例如 pctfree,pctused,及表空间等。
一个分区对象的所有分区必须存储在数据块容量(block size)相同的表空间中。
分区表分区在不同的表空间上:
SQL> CREATE TABLESPACE MYTEST1 DATAFILE 'F:\oracle\product\MYTEST1.DBF' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM. SIZE 128K;
Tablespace created
SQL> CREATE TABLESPACE MYTEST2 DATAFILE 'F:\oracle\product\MYTEST2.DBF' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM. SIZE 100K;
Tablespace created
--创建分区表
SQL> CREATE TABLE sales
2 ( invoice_no NUMBER,
3 sale_year INT NOT NULL,
4 sale_month INT NOT NULL,
5 sale_day INT NOT NULL )
6 PARTITION BY RANGE (sale_year, sale_month, sale_day)
7 ( PARTITION sales_q1 VALUES LESS THAN (1999, 04, 01)
8 TABLESPACE MYTEST1,
9 PARTITION sales_q4 VALUES LESS THAN (2000, 01, 01)
10 TABLESPACE MYTEST2 );
Table created
SQL> CREATE TABLESPACE MYTEST3 DATAFILE 'F:\oracle\product\MYTEST3.DBF' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM. SIZE 128K blocksize 2048
2 segment space management auto;
Tablespace created
SQL> DROP TABLE sales;
Table dropped
SQL>
SQL> CREATE TABLE sales
2 ( invoice_no NUMBER,
3 sale_year INT NOT NULL,
4 sale_month INT NOT NULL,
5 sale_day INT NOT NULL )
6 PARTITION BY RANGE (sale_year, sale_month, sale_day)
7 ( PARTITION sales_q1 VALUES LESS THAN (1999, 04, 01)
8 TABLESPACE MYTEST1,
9 PARTITION sales_q4 VALUES LESS THAN (2000, 01, 01)
10 TABLESPACE MYTEST3 );
CREATE TABLE sales
( invoice_no NUMBER,
sale_year INT NOT NULL,
sale_month INT NOT NULL,
sale_day INT NOT NULL )
PARTITION BY RANGE (sale_year, sale_month, sale_day)
( PARTITION sales_q1 VALUES LESS THAN (1999, 04, 01)
TABLESPACE MYTEST1,
PARTITION sales_q4 VALUES LESS THAN (2000, 01, 01)
TABLESPACE MYTEST3 )
ORA-14519: 与 table 的表空间块大小存在冲突: 表空间 MYTEST3 的块大小 2048 [partition specification] 与以前指定/隐含的表空间 MYTEST1 的块大小 8192 [partition specification] 发生冲突
9i以后还提供了可以设置多种数据块尺寸(2、4、8、16 或 32k)的buffer cache,以便存放不同数据块尺寸的表空间中的对象。使用初始化参数:db_Nk_cache_size来指定不同数据块尺寸的buffer cache,这里的N就是2、4、8、16 或 32。创建数据库时,使用初始化参数:db_block_size所指定缺省的数据块尺寸用于system表空间。然后可以指定最多4个不同数据块尺寸的表空间,每种数据块尺寸的表空间必须对应一种不同尺寸的buffer cache,否则不能创建不同数据块尺寸的表空间。
参考:http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm#sthref373
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25323853/viewspace-686919/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25323853/viewspace-686919/