网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.Actualtests Oracle 1Z0-031 V11.
.oracle的字段类型.
.Oracle 8i R2 (8.1.6) for Windo.
.如何可以在RHAS3上成功安装Oracl.
.TestKing Oracle 1Z0-007 Edt4.1.
.Vi 使用说明.
.Oracle 10G 最佳20位新特性:物化.
.Oracle 9i服务器的关闭.
.关于裸设备及Oracle的20个实用问.
.Oracle内存结构:SGA的区域信息.
.查询语句(SELECT)的优化.
.Oracle 数据库向 MS SQL Server .
.在ORACLE中利用角色增强应用系统.
.如何选购Linux可以搭配的机器之一.
.oracle10g网络配置.
.多方面讲解pl/sql编程存在的几个.
.讲解Oracle FailSafe与rac的联系.
.如何在Linux系统下实现Server Pu.
.整理Oracle数据库碎片.
.Oracle分布式系统数据复制技术.

本地分区索引如何确定表空间(1)

发表日期:2008-2-9



  表和索引建立的时候假如不指定表空间,会建立在用户的默认表空间中。对于分区表和分区索引,则确定建立的表空间的规则要复杂一些,本文进行简单的总结
  
  分区表的分区增加分区假如不指定表空间,会根据分区表的默认表空间,假如分区表没有指定默认表空间,则建立在用户的默认表空间上。参考例一。
  
  复合分区表增加子分区假如不指定表空间,会根据分区上的默认表空间,假如分区上没有指定,则根据表上面的默认表空间,假如表上也没有指定,则建立在用户的默认表空间上。参考例二。
  
  分区索引的情况比分区还要复杂一些。由于本地索引会随着增加分区的操作自动增加,因此,无法明确的为这个索引指定表空间。假如在建立分区索引时,给出了默认表空间,那么新增的索引分区所在表空间和新增表分区所在表空间保持一致。参考例三。
  
  复合分区索引的情况和分区索引类似。当复合分区表增加子分区时,假如复合分区索引给出了分区默认表空间,则新建的索引子分区建立在索引分区默认表空间上,假如分区一级没有明确致命默认表空间,则依据索引一级的默认表空间创建新子分区,假如索引一级仍然没有设置明确设置表空间,则索引子分区的表空间和表中子分区的表空间保持一致。参考例四。
  
  例一:分区表增加分区
  
  SQL> SELECT DEFAULT_TABLESPACE FROM USER_USERS;
  
  DEFAULT_TABLESPACE
  ------------------------------
  YANGTK
  
  
  SQL> CREATE TABLE TEST (ID NUMBER)
   2 TABLESPACE USERS
   3 PARTITION BY RANGE (ID)
   4 (
   5  PARTITION P1 VALUES LESS THAN (100)
   6  TABLESPACE TEST
   7 );
  
  表已创建。
  
  SQL> CREATE TABLE TEST1 (ID NUMBER)
   2 PARTITION BY RANGE (ID)
   3 (
   4  PARTITION P1 VALUES LESS THAN (100)
   5  TABLESPACE TEST
   6 );
  
  表已创建。
  
  SQL> ALTER TABLE TEST ADD PARTITION P2 VALUES LESS THAN (200);
  
  表已更改。
  
  SQL> ALTER TABLE TEST1 ADD PARTITION P2 VALUES LESS THAN (200);
  
  表已更改。
  
  SQL> SELECT TABLE_NAME, TABLESPACE_NAME FROM USER_TAB_PARTITIONS
   2 WHERE PARTITION_NAME = 'P2';
  
  TABLE_NAME           TABLESPACE_NAME
  ------------------------------ ------------------------------
  TEST              USERS
  TEST1             YANGTK
  
  SQL> DROP TABLE TEST;
  
  表已丢弃。
  
  SQL> DROP TABLE TEST1;
  
  表已丢弃。
  
  例二:复合分区表增加子分区
  
  SQL> SELECT DEFAULT_TABLESPACE FROM USER_USERS;
  
  DEFAULT_TABLESPACE
  ------------------------------
  YANGTK
  
  SQL> CREATE TABLE TEST (TIME DATE, STATE VARCHAR2(10))
   2 TABLESPACE TOOLS
   3 PARTITION BY RANGE (TIME) SUBPARTITION BY LIST (STATE)
   4 (
   5  PARTITION P1 VALUES LESS THAN (TO_DATE('2004-1-1', 'YYYY-MM-DD'))
   6  TABLESPACE USERS
   7  (
   8  SUBPARTITION SP1 VALUES ('BJ')
   9  TABLESPACE TEST
   10  )
   11 )
   12 ;
  
  表已创建。
  
  SQL> CREATE TABLE TEST1 (TIME DATE, STATE VARCHAR2(10))
   2 TABLESPACE TOOLS
   3 PARTITION BY RANGE (TIME) SUBPARTITION BY LIST (STATE)
   4 (
   5  PARTITION P1 VALUES LESS THAN (TO_DATE('2004-1-1', 'YYYY-MM-DD'))
   6  (
   7  SUBPARTITION SP1 VALUES ('BJ')
   8  TABLESPACE TEST
   9  )
   10 )
   11 ;
  
  表已创建。
  
  SQL> CREATE TABLE TEST2 (TIME DATE, STATE VARCHAR2(10))
   2 PARTITION BY RANGE (TIME) SUBPARTITION BY LIST (STATE)
   3 (
   4  PARTITION P1 VALUES LESS THAN (TO_DATE('2004-1-1', 'YYYY-MM-DD'))
   5  (
   6  SUBPARTITION SP1 VALUES ('BJ')
   7  TABLESPACE TEST
   8  )
   9 )
   10 ;
  
  表已创建。

  
  SQL> ALTER TABLE TEST MODIFY PARTITION P1 ADD SUBPARTITION SP2 VALUES ('SH');
  
  表已更改。
  
  SQL> ALTER TABLE TEST1 MODIFY PARTITION P1 ADD SUBPARTITION SP2 VALUES ('SH');
  
  表已更改。
  
  SQL> ALTER TABLE TEST2 MODIFY PARTITION P1 ADD SUBPARTITION SP2 VALUES ('SH');
  
  表已更改。
  
  SQL> SELECT TABLE_NAME, TABLESPACE_NAME FROM USER_TAB_SUBPARTITIONS
   2 WHERE SUBPARTITION_NAME = 'SP2';
  
  TABLE_NAME           TABLESPACE_NAME
  ------------------------------ ------------------------------
  TEST              USERS
  TEST1             TOOLS
  TEST2             YANGTK
  
  SQL> DROP TABLE TEST;
  
  表已丢弃。
  
  SQL> DROP TABLE TEST1;
  
  表已丢弃。
  
  SQL> DROP TABLE TEST2;
  
  表已丢弃。
  
  例三:本地索引分区
  
  SQL> SELECT DEFAULT_TABLESPACE FROM USER_USERS;
  
  DEFAULT_TABLESPACE
  ------------------------------
  YANGTK
  
  SQL> CREATE TABLE TEST (ID NUMBER, NAME VARCHAR2(30))
   2 TABLESPACE USERS
   3 PARTITION BY RANGE (ID)
   4 (
   5  PARTITION P1 VALUES LESS THAN (100)
   6  TABLESPACE TEST
   7 );
  
  表已创建。
  
  SQL> CREATE TABLE TEST1 (ID NUMBER, NAME VARCHAR2(30))
   2 PARTITION BY RANGE (ID)
   3 (
   4  PARTITION P1 VALUES LESS THAN (100)
   5  TABLESPACE TEST
   6 );
上一篇:销售订单单行状态不对订单不关闭的处理 人气:672
下一篇:本地分区索引如何确定表空间(2) 人气:1396
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐