在做数据抽取时,我们可能会用分区表来做增量抽取,今天先看看分区表,简单创建,明天详细说明。
--创建一下范围分区表
CREATE TABLE t_partition
(
object_id NUMBER,
object_name VARCHAR2(128)
)
PARTITION BY RANGE (object_id)
(
PARTITION pMax VALUES LESS THAN (MAXVALUE) TABLESPACE users
);
--创建一个不含分区的表
CREATE TABLE t_no_partition as
select object_id,
object_name
from dba_objects;
-- 将非分区表。快速转化为分区表,可加入without validation 不效验数据。会大大加快转化速度。
ALTER TABLE t_partition
EXCHANGE PARTITION pmax WITH TABLE t_no_partition;
/***********************************
desc: 创建一个按时间分区的分区表
time: 2010-1-6
created:benson
***********************************/
--查看用户分区表状态
select * from user_tab_partitions;
--创建分区表按照时间分区
create table t_par(s_time date,id number)
partition by range(s_time)
(
partition pmax values less than(maxvalue) tablespace users
);
--插入100条记录,100天的数据
insert into t_par select to_date('2010-12-31','yyyy-mm-dd')-mod(rownum,100),rownum from dba_objects where rownum<100;
--按时间分为两个区p1,pmax
alter table t_par
split partition pmax at(to_date('2010-10-1','yyyy-mm-dd'))
into
(
partition p1,
partition pmax
);
--查看p1分区,可以看到p1分区为 2010-10-1以前的数据
SELECT * FROM t_par PARTITION(p1);
--插入一条2010-10-1日以前的数据。验证是否插入到了 partition p1中
insert into t_par values(to_date('2010-9-1','yyyy-mm-dd'),222);
--验证数据
SELECT * FROM t_par PARTITION(p1);
--小提示:
--如果有数据不符合分区条件为报ORA-14099 错误
ORA-14099:, all rows in table do not qualify for specified partition.
--有时我们在建造测试数据时,需要时间数据。可以这样创建。
select to_date('2009-12-31','yyyy-mm-dd')-mod(rownum,360) from dba_objects where rownum<365;
分享到:
相关推荐
Oracle分区表中的Hash分区是一种基于哈希算法的分区策略,适用于处理无法清晰定义分区范围的大型数据表。这种分区方式通过计算分区键的哈希值来决定数据存储在哪个分区,以此达到数据分散和负载均衡的目的。Hash分区...
Oracle 的分区技术是一种用于管理和优化超大型表和索引的有效手段。通过将一个大型的表或者索引分割成多个较小且可管理的部分,分区技术能够显著提升数据库的性能、可用性和可维护性。 ##### 分区的作用: 1. **...
Oracle分区表是一种高级的数据库管理技术,它将大型表的数据分散存储在不同的物理区域,以提升查询效率和系统的整体性能。本文将详细介绍分区表的概念、作用、优缺点,以及各种类型的分区表及其创建方法。 1. **表...
Oracle分区表是数据库管理系统Oracle中的一个高级特性,用于将大表分成较小、更易管理的部分,从而提高查询性能,优化存储管理和数据维护。在大型企业级应用中,尤其是在处理大量数据时,分区表是不可或缺的技术手段...
Oracle数据库中的分区表是一种高级的表组织形式,它将大表分成多个较小的部分,每个部分称为一个分区,以提高查询性能和管理效率。当表的大小超过2GB时,官方推荐使用分区表,因为它们在处理大量数据时具有显著优势...
在Oracle数据库管理中,对分区表进行数据的导入与导出是一项常见的任务。分区技术可以显著提高大型表的性能,尤其是在处理大规模数据集时。为了有效地管理和迁移这些分区表中的数据,Oracle提供了多种工具和技术来...
Oracle 分区表管理是数据库系统中的一个重要概念,它允许大表的数据被组织成更小、更易管理和查询的单元,从而提高数据处理的效率。在Oracle数据库中,分区表是通过将一个大表分解为多个逻辑上关联的分区来实现这一...
Oracle 分区表是指将一个大表分割成多个小表,每个小表称为一个分区,分区表的优点是可以提高查询性能、改善管理型、增强容错性等。 分区表的分类: 1. 范围分区(Range Partitioning) 范围分区是将数据基于范围...
Oracle 分区表全揭秘 ,非常详细,oracle dba可以看看
标题中提到的“Oracle 分区表自动维护脚本”是指一种在Oracle数据库系统中用于管理和维护分区表的自动化脚本。这种脚本可以执行多个维护任务,包括但不限于:增加新分区、删除历史分区、拆分分区和数据清除等操作。...
在Oracle数据库管理中,分区表是一种非常实用的功能,它能够帮助优化查询性能并简化大型表的管理。当涉及到批量删除或清除分区表中的数据时,就需要掌握一些特定的方法和技术。根据给定的信息“清除oracle分区表数据...
#### 一、Oracle分区表概述 在Oracle数据库中,分区是一种对大型表进行物理分割的方法,它可以显著提高查询性能并简化数据管理任务。通过将一个大表分成多个较小的部分(即分区),可以更快地执行查询操作,尤其是...
2. 数据可用性增强:即使某一分区出现问题,其他分区的数据仍可正常访问。 3. 维护简便:修复或调整数据时,只需关注有问题的分区。 4. 平衡I/O负载:不同分区可以分配到不同磁盘,提高整体系统性能。 然而,分区也...
1. **分区概念**:Oracle分区表是将一个大表逻辑上划分为多个较小的部分,每个部分称为一个分区。每个分区都有自己的索引和维护操作,这使得对大规模数据的操作变得高效和便捷。 2. **分区类型**: - **范围分区**...
在Oracle数据库中,分区是一种高效的数据管理方式,尤其适用于大型表和索引组织表。通过将数据逻辑地分割成多个独立的部分(即分区),可以显著提高查询性能,并简化表维护操作。本文将详细介绍在Oracle中如何创建...
"Oracle分区表和分区索引在VLDB中的研究" 本文研究了Oracle分区表和分区索引在VLDB(Very Large Databases)中的应用。分区表和分区索引是数据库管理中的关键技术之一,是VLDB中一个重要的性能提升机制。通过分析一...
Oracle 分区表(Partitioned Table)是一种特殊的表结构,可以根据不同的条件将数据分割成多个独立的分区,以提高查询效率和减少存储空间。本文将详细介绍将 Oracle 普通表转换为分区表的方法。 分区表的优点 1. ...
Oracle 分区表分区索引是 Oracle 数据库中的一种重要机制,它可以提高数据的存储和查询效率。下面将详细介绍 Oracle 分区表分区索引的类型、分类、创建方法和维护方式。 一、分区表和分区索引的概念 分区表是指将...
在Oracle数据库中,分区技术是一种非常有效的管理大型表和索引的方法。通过将一个大的表或索引分成多个较小的部分(分区),可以显著提高查询性能,并简化表和索引的管理。 #### 二、何时使用分区 在决定是否对表...