Oracle 11G 分区表和锁
    SQL> remark 分区表的优势:VLDB=VARY LARGE DATABAST
SQL> remark 增强可用性  减少关闭的时间  维护轻松
SQL> remark .................................................................
SQL> remark 分区表的分类:四种分区的方法
SQL> remark 范围分区  列表 散列分区  复合分区
SQL> remark 创建范围分区:分界点一定是从小到大的依次给出的
SQL> create table atable
  2  (
  3  	userid number(4) primary key ,
  4  	name varchar(10) not null,
  5  	age number(2),
  6  	state char(8)
  7  )
  8  partition by range(userid)
  9  (
 10  	partition p1 values less than (1001) tablespace hope,
 11  	partition p2 values less than (2001) tablespace hope2
 12  );
	partition p1 values less than (1001) tablespace hope,
	                                                *
ERROR at line 10:
ORA-00959: tablespace 'HOPE' does not exist 
SQL> remark 以上没有创建表空间...............................................
SQL> create tablespace zhangjun
  2  datafile 'd:\zhangjun.dbf'
  3  size 30m
  4  autoextend on;
Tablespace created.
SQL> remark 创建列表分区
SQL> create table Mobilephone
  2  (
  3  	mid number(11),
  4  	mtype char(10),
  5  	location varchar(30)
  6  )
  7  partition by list(location)
  8  (
  9  	partition p1 values('洪山','青山','武昌'),
 10  	partition p2 values('桥口','汉阳'),
 11  	partition p3 values(default)
 12  );
Table created.
SQL> remark 创建散列分区
SQL> remark 特点:只关注分区的数量,系统自动定义分区的名称,分区的数据存储在缺省的表空间里面。
SQL> create table orders
  2  (
  3  	oid number(20),
  4  	orderdate date,
  5  	mname varchar(30),
  6  	count int ,
  7  	price number(12,2)
  8  )
  9  partition by hash(oid)
 10  partitions 8;
SQL> remark 查看分区表的信息
SQL> remark select table_name , partition_name,tablespace_name from user_tab_partitions;
SQL> remark .....................................................
SQL> remark 创建分区表的时候,给定分区的名称
SQL> create table orders
  2  (
  3  	oid number(20),
  4  	orderdate date,
  5  	mname varchar(30),
  6  	count int,
  7  	price number(12,2)
  8  )
  9  partition by hash (oid)
 10  (
 11  	partition p1,
 12  	partition p2,
 13  	partition p3
 14  )
 15  ;
Table created.
SQL> remark 创建分区表的时候指定分区存储的表空间
SQL> remark .....................................................
SQL> remark partition by hash(oid) partitions 3 store in (tablespace1,tablespace2,tablespace3);  有多少个分区对应多少个表空间
SQL> remark ......................................................
SQL> remark 创建复合分区
SQL> remark 复合分区可以是范围分区和列表的组合,也可以是范围分区和散列的组合
SQL> remark .......................................................
SQL> remark 分区表的维护
SQL> remark 查询分区表中的数据
SQL> select * from atable partition(p2);
select * from atable partition(p2)
              *
ERROR at line 1:
ORA-00942: table or view does not exist 
SQL> remark 增加分区表:增加分区表的分区一定是最后一个分区
SQL> rema