第10章其他的模式对象 工二工工二工工工工工工工工 在Oracle中,除表、索引和索引组织表外,视 图、序列,簇和簇表等也是重要的模式对象。在本 章中,首先将介绍如何创建分区表,以及基于分区 表的索引,然后介绍Dracle利用外部数据的一种方 法一外部表,最后对其他一些模式对象,包括簇 清率电脑学堂 临时表、视图、序列和同义词等常用模式对象进 行简单介绍
1 第10章 其他的模式对象 在Oracle中,除表、索引和索引组织表外,视 图、序列,簇和簇表等也是重要的模式对象。在本 章中,首先将介绍如何创建分区表,以及基于分区 表的索引,然后介绍Oracle利用外部数据的一种方 法——外部表,最后对其他一些模式对象,包括簇 、临时表、视图、序列和同义词等常用模式对象进 行简单介绍
本章知识要点: 分区表 各类型的分区 分区索引 使用外部表查询数据 临时表的使用 清率电脑学堂 理解什么是簇和簇表 创建索引簇 创建散列簇 使有视图 使用序列 使用同义词
2 本章知识要点: • 分区表 • 各类型的分区 • 分区索引 • 使用外部表查询数据 • 临时表的使用 • 理解什么是簇和簇表 • 创建索引簇 • 创建散列簇 • 使有视图 • 使用序列 • 使用同义词
10.1管理表分区与索引分区 在当前的企业应用中,需要处理的数据量可以达 到几十到几百GB,甚至TB级。为了提高对这些巨型 数据库和巨型表的读写速度,Oracle提供一种分区技 术。用户可以在创建表时应用分区技术,将数据分区 保存。 清率电脑学堂
3 10.1 管理表分区与索引分区 • 在当前的企业应用中,需要处理的数据量可以达 到几十到几百GB,甚至TB级。为了提高对这些巨型 数据库和巨型表的读写速度,Oracle提供一种分区技 术。用户可以在创建表时应用分区技术,将数据分区 保存
10.1.1分区的概念 分区是指将巨型的表或索引分割成相对较小的、 可独立管理的部分,这些独立的部分称为原来表或索 引的分区。分区后的表与未分区的表在执行查询语句 或其他DML语句时没有任何区别,一旦进行分区之后 ,还可以使用DDL语句对每个单独的分区进行操作。 因此,对巨型表或者索引进行分区后,能够简化对它 清率电脑学堂 们的管理和维护操作,而且分区对于最终用户和应用 程序是完全透明的。 分区的表(分区的索引 未分区的表(分区的索引) 索引 索引 索引 索引 口口口口口 口口口 6 星
10.1.1 分区的概念 • 分区是指将巨型的表或索引分割成相对较小的、 可独立管理的部分,这些独立的部分称为原来表或索 引的分区。分区后的表与未分区的表在执行查询语句 或其他DML语句时没有任何区别,一旦进行分区之后 ,还可以使用DDL语句对每个单独的分区进行操作。 因此,对巨型表或者索引进行分区后,能够简化对它 们的管理和维护操作,而且分区对于最终用户和应用 程序是完全透明的。 4 索引 索引 索引 索引 5月 6月 7月 未分区的表(分区的索引) 分区的表(分区的索引)
10.1.2建立分区表 在Oracle11g数据库中,根据对表或索引的分区 方法可以创建五种类型的分区表:范围分区、散列分 区、列表分区、组合范围散列分区和组合范围列表分 区。每种分区表都有自己的特点,在创建分区表时, 应当根据表应用情况选择合理的分区类型。 清率电脑学堂 普通表 分区表 季度销 售数据 季度销 售数据 季度销 售数据 四季度销 数据
10.1.2 建立分区表 • 在Oracle 11g数据库中,根据对表或索引的分区 方法可以创建五种类型的分区表:范围分区、散列分 区、列表分区、组合范围散列分区和组合范围列表分 区。每种分区表都有自己的特点,在创建分区表时, 应当根据表应用情况选择合理的分区类型。 5 普通表 分区表 一季度销 售数据 二季度销 售数据 三季度销 售数据 四季度销 售数据
10.1.3修改分区表 对分区表而言,可以像普通表一样使用ALTER TABLE 语句进行修改。因此,本节主要介绍分区表所特有修改。 1.为范围分区表添加分区 2.为散列分区表增加分区 3.为列表分区表增加分区 4. 为范围散列组合分区表增加主分区和子分区 清率电脑学堂 5.为范围列表分区表增加主分区和子分区 6. 删除分区 7. 交换分区数据 8. 修改分区表名称 9. 合并分区 10. 重组分区
6 10.1.3 修改分区表 • 对分区表而言,可以像普通表一样使用ALTER TABLE 语句进行修改。因此,本节主要介绍分区表所特有修改。 • 1.为范围分区表添加分区 • 2.为散列分区表增加分区 • 3.为列表分区表增加分区 • 4.为范围散列组合分区表增加主分区和子分区 • 5.为范围列表分区表增加主分区和子分区 • 6.删除分区 • 7.交换分区数据 • 8.修改分区表名称 • 9.合并分区 • 10.重组分区
10.1.4分区索引和全局索引 对于分区表而言,每个表分区对应一个分区段。当 在分区表上建立索引时,即可以建立全局索引,也可以 建立分区索引。对于合局索引,其索引数据会存放在 个索引段中;而对于分区索引,则索引数据都会被存放 到几个索引分区段中。对索引进行分区的目的与对表进 清率电脑学堂 行分区是一样的,都是为了更加易于管理和维护巨型对 象。 分区索引回口口口可 分区表 冒閨冒
7 10.1.4 分区索引和全局索引 • 对于分区表而言,每个表分区对应一个分区段。当 在分区表上建立索引时,即可以建立全局索引,也可以 建立分区索引。对于合局索引,其索引数据会存放在一 个索引段中;而对于分区索引,则索引数据都会被存放 到几个索引分区段中。对索引进行分区的目的与对表进 行分区是一样的,都是为了更加易于管理和维护巨型对 象。 分区索引 分区表
10.2外部表 外部表是表结构被存储在数据字典中,而表数据被 存放在OS文件中的表。通过使用外部表,不仅可以在 数据库中查询OS文件的数据,还可以使用INSERT方式 将OS文件数据装载到数据库中,从而实现SQL*Loader 所提供的功能。 清率电脑学堂
10.2 外部表 • 外部表是表结构被存储在数据字典中,而表数据被 存放在OS文件中的表。通过使用外部表,不仅可以在 数据库中查询OS文件的数据,还可以使用INSERT方式 将OS文件数据装载到数据库中,从而实现SQL*Loader 所提供的功能。 8
10.2.1建立外部表 建立外部表也是使用CREATE TABLE语句来完成 的,但建立外部表是必须指定ORGANIZATION EXTERNAL子句。与建立普通表不同,建立外部表包 括两部分:一部分描述列的数据类型,另一部分描述 OS文件数据与表列的对应关系。 清率电脑学堂
10.2.1 建立外部表 • 建立外部表也是使用CREATE TABLE语句来完成 的,但建立外部表是必须指定ORGANIZATION EXTERNAL子句。与建立普通表不同,建立外部表包 括两部分:一部分描述列的数据类型,另一部分描述 OS文件数据与表列的对应关系。 9
10.2.2处理外部表错误 在将数据文件中的数据转换为表中列数据时,不 可避免会现一些错误。当出现错误时,用户就需要收 集错误信息,从中找到导致出现错误的原因并加以纠 正。在创建外部表时,关于错误处理的子句包括: REJECT LIMIT、BADFILE和LOGFILE子句. 清率电脑学堂
10 10.2.2 处理外部表错误 • 在将数据文件中的数据转换为表中列数据时,不 可避免会现一些错误。当出现错误时,用户就需要收 集错误信息,从中找到导致出现错误的原因并加以纠 正。在创建外部表时,关于错误处理的子句包括: REJECT LIMIT、BADFILE和LOGFILE子句