oracle11范围表空间实例

2024-01-08 15:43:51

1.表分区:范围分区,散列分区,列表分区,组合分区,inetrval分区

范围分区:商品零售表,按照销售日期所在的季度创建4个分区


--先建立表空间:临时表空间是不可以存放数据的,此处不能建临时表空间
CREATE tablespace TBSP_1 datafile '/home/oracle/app/oracle/oradata/helowin/TBSP_1.dbf'
SIZE 10M
extent management local uniform size 256K;

CREATE tablespace TBSP_2 datafile '/home/oracle/app/oracle/oradata/helowin/TBSP_2.dbf'
SIZE 10M
extent management local uniform size 256K;

--创建表结构,范围分区

drop TABLE ware_retail_part;--删除表
CREATE TABLE ware_retail_part(--新建表
?? ?id INTEGER primary key,
?? ?retail_date date,--分区键
?? ?ware_name VARCHAR2(50)
)
--范围分区
partition by RANGE(retail_date)--关键字range
(?? ?
--第一季度
partition par_01 VALUES less than(to_date('2011-04-01','yyyy-mm-dd')) tablespace TBSP_1,
--第二季度
partition par_02 VALUES less than(to_date('2011-07-01','yyyy-mm-dd')) tablespace TBSP_1,
--第三季度
partition par_03 VALUES less than(to_date('2011-10-01','yyyy-mm-dd')) tablespace TBSP_2,
--第四季度
partition par_04 VALUES less than(to_date('2012-01-01','yyyy-mm-dd')) tablespace TBSP_2
);

注意语法结构

2.插入数据,然后测试查询数据是否在各自符合的分区内

--插入数据,测试数据是否在符合的分区内
INSERT into ware_retail_part values(1,to_date('2011-01-20','yyyy-mm-dd'),'平板电脑');
INSERT into ware_retail_part values(2,to_date('2011-04-5','yyyy-mm-dd'),'智能手机');

select * from ware_retail_part;--整体查询数据存在表示插入成功

--按照分区查询数据

通过分区查找也可以查到数据,表示我们的表分区成功保存了符合的数据。

错误点:开始创建的是临时表空间,导致报错,ORA-02195:尝试创建的PERMANENT对象在TEMPORARY表空间中,后来查询资料发现,临时表空间不可以存放数据,所以删除了临时表空间,重建表空间,问题解决。

文章来源:https://blog.csdn.net/wudongfang666/article/details/135455890
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。