Oracle的临时表、分区表、分区索引.doc

Oracle的临时表、分区表、分区索引.doc

ID:57891018

大小:213.00 KB

页数:15页

时间:2020-09-02

Oracle的临时表、分区表、分区索引.doc_第1页
Oracle的临时表、分区表、分区索引.doc_第2页
Oracle的临时表、分区表、分区索引.doc_第3页
Oracle的临时表、分区表、分区索引.doc_第4页
Oracle的临时表、分区表、分区索引.doc_第5页
资源描述:

《Oracle的临时表、分区表、分区索引.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Oracle的临时表一、表的种类1:永久表:非私有数据,需要DML锁。2:临时表:临时表的定义对所有会话都是可见的,处理事务或会话期存在的私有数据,不需要DML锁,对于临时表的DML语句不生成重做日志,临时表占用临时表空间,临时表的数据是自动删除的,在临时表上建的索引也是临时的。二、临时表的种类1:事物型临时表:在事务期间数据存在,事务结束后数据被自动删除。2:会话型临时表:在会话期间数据存在,会话结束后数据被自动删除。三、临时表的限制1:不能分区,不能是索引组织表或簇。2:不能指定关于临时表的外键约束。

2、3:不支持并行DML或并行查询。4:不支持分布式事务处理。5:不能指定段存储语句、嵌套表存储语句或并行语句四、建立临时表的语法1:建立关系表2:建立对象表3:并行语句Oracle的分区表一、什么是分区表Oracle可以将大表或索引分成若干个更小更方便管理的部分,每一部分称为一个分区,这样的表称为分区表。SQL语句使用分区表比全表或全表索引能提供更好的访问和处理数据。下图是按周所建分区表示例。二、使用分区表的限制1:不能分割是簇一部分的表。2:不能分割含有LONG或LONGRAW列的表。3:索引组织表IOT

3、不能进行范围分区。**采用基于规则的优化器时,有会从分区表中受益!三、分区方法1:范围分区(更适合历史数据库)—Oracle8从惟一可用的分区类型按照列的列表的范围分割表;如果是索引组织表,则列的列表就必须是索引组织表主键的子集。分区关键列的限制:列列表中的列可以是任何一种内置的数据类型,ROWID、LONG、LOB或者TIMESTAMPWITHTIMEZONE除外。关键字MAXVALUE比任何值都高(含NULL)。2:散列分区--Oracle8i可用的分区类型指定这个表是按哈希算法分区的,分区的数目应为

4、2的幂。1)单独散列分区(individual_hash_partitions)及其限制使用子名按照名字指定单个分区,分区名可以匆略。此时能指定的唯一子句是表空间。1)按照数量的散列分区(hash_partitions_by_quantity)可以指定分区的数目,Oracle此时指定分区的名字SYS_Pn。STOREIN子句指定分区所分布的表空间的名称。表空间的数目不一定和分区的数目相等。如果分区的数目比表空间的数目大,则分区按照名称循环使用表空间。如果在按数量分区时指了STOREIN和分区存储子句的表空

5、间,则SOTREIN指定了表创建分区的放置,TABLESPACE子句指定随后的操作的缺省表空间。2)散列分区的限制A:列列表中不能指定超过16个列。B:列列表不能包含ROWID或UROWID伪列。C:列列表可以是任何内置的数据类型,ROWID,LONG,orLOB除外。3:列表分区—Oracle9i可用的分区类型使用list_partitioning子句按照列的值分割表,列表分区用于控制单独的行映射到指定的分区。每个分区的list_values_clause最少有一个值。空值可能在多个分区中出现。你可以指

6、定一个缺省分区,且缺省分区是定义分区的最后一个。列表分区的限制:1)列表分区不能有子分区。2)在COLUMN_LIST中只能指定一个分区,且不能是LOB列。3)如果分区键是对象类型列,你只能按列类型的一个属性分割。4)list_values_clause的每个值在表的所有分区必须唯一。5)不能列出索引组织表的分区。4:复合分区先按范围分区,然后按散列或列表建立子分区。你能指定散列、列表或LOB子分区的唯一特性是表空间。你不能给索引组织表指定复合分区。支持复合分区的类型:a—范围散列--Oracle8i可用

7、的分区类型b—范围列表—Oracle9i可用的分区类型范围散列适用于即保存历史数据,又需要数据均匀分布的应用;范围列表适用于即保存历史数据,又要离散数据的存放进行控制的应用;如:范围散列分区使用范围分区,且子分区内使用HASH分区。二、建立分区表的语法1:表特性子句2:范围分区子句3:散列分区子句:4:散列分区存储子句5:列表分区6:复合分区7:分区定义8:按照散列的子分区9:分割级子分区10:并行子句11:全局分区子句二、建立分区方法示例1:范围分区CREATETABLEsales(acct_no   

8、    NUMBER(5),                     acct_name       CHAR(30),                     amount_of_sale  NUMBER(6),                     week_no         INTEGER)      PARTITIONBYRANGE(week_no)...           (PARTITIONsales1VA

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。