oracle 分区字符转换,Oracle 普通表与分区表转换
oracle 9i提供了dbms_redefinition包来实现数据库的表的在线重定义功能。在实际的应用上,我们可以利用这个包来进行:
(1)堆表与分区之间进行转换。(2)重建表以减少HWM。10g能shrink,9i如果用move tablespace and rebuild index在move的时候会锁表,如果想实现在线降低HWM,只能用这个了。
(3)在线更改表结构,如更改列的前后顺序,将column_a,column_b改成column_b,column_a
1.创建测试表
create table rebuild_table as select * from dba_objects;
insert into rebuild_table select * from rebuild_table;
insert into rebuild_table select * from rebuild_table;
insert into rebuild_table select * from rebuild_table;
commit;
delete from rebuild_table;
insert into rebuild_table select * from dba_objects;
insert into rebuild_table select * from rebuild_table;
insert into rebuild_table select * from rebuild_table;
commit;
update rebuild_table set object_id=rownum;
alter table rebuild_table add CONSTRAINT P_YY PRIMARY KEY (OBJECT_ID);
select * from rebuild_table;
2.创建分区表
create table REBUILD_PA_TABLE
(
STATIS_DATE NUMBER(8),
OWNER VARCHAR2(30),
OBJECT_NAME VARCHAR2(128),
SUBOBJECT_NAME VARCHAR2(30),
OBJECT_ID NUMBER not null,
DATA_OBJECT_ID NUMBER,
OBJECT_TYPE VARCHAR2(18),
CREATED DATE,
LAST_DDL_TIME DATE,
TIMESTAMP VARCHAR2(19),
STATUS VARCHAR2(7),
TEMPORARY VARCHAR2(1),
GENERATED VARCHAR2(1),
SECONDARY VARCHAR2(1)
)
partition by list (STATIS_DATE)
(
partition p20111031 values (20111031)
);
alter table REBUILD_PA_TABLE add partition p20111101 values(20111101);
;
alter table REBUILD_PA_TABLE
add constraint Pa_YYY primary key (OBJECT_ID)
;
-- 打开重定义
begin
dbms_redefinition.CAN_REDEF_TABLE('boc_rdm','REBUILD_TABLE');
end;
-- 开始重定义
begin
dbms_redefinition.START_REDEF_TABLE('boc_rdm','REBUILD_TABLE','REBUILD_PA_TABLE');
end;
-- 进行数据同步
begin
dbms_redefinition.sync_interim_table('BOC_RDM','REBUILD_TABLE','REBUILD_PA_TABLE');
end;
-- 重命名表,把非分区表转化为分区表
begin
dbms_redefinition.finish_redef_table('BOC_RDM','REBUILD_TABLE','REBUILD_PA_TABLE');
end;
select * from REBUILD_TABLE partition(p20111031)
oracle 分区字符转换,Oracle 普通表与分区表转换相关推荐
- oracle 分区字段作用,oracle表分区的作用
表空间及分区表的概念 表空间:(推荐学习:web前端视频教程) 是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间 分区表: 当表中的数据量不断增大, ...
- Oracle常用字符ASCII码对应表
chr(9) tab空格 chr(10) 换行 chr(13) 回车 Chr(13)&chr(10) 回车换行 chr(32) 空格符 chr(34) 双引号 chr(39) 单引号 chr( ...
- oracle分区注意点,ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项
http://www.cnblogs.com/yumiko/p/6163523.html 前言: 本文着重总结分区表的日常维护操作以及相应的注意事项. 本文涉及的日常维护内容包括: 增加分区(add) ...
- oracle数据库字符6,oracle 数据库字符编码
理解ORACLE 字符集[转] 一.引言 ORACLE数据库字符集,即Oracle全球化支持(Globalization Support),或即国家语言支持(NLS)其作用是用本国语言和格式来存储.处 ...
- oracle 分区使用情况,Oracle Hash分区的使用总结
近期项目需要用到分区表,但是分区键值有无法确定,因此只能使用hash分区(range.list分区以前常用,比hash分区简单),查询了文档,发现上面说的和实际使用时有点差距,就专门做实验验证下. 官 ...
- oracle分区注意点,ORACLE分区表梳理系列(一)- 分区表概述、分类、使用方法及注意事项...
博文作者:Yumiko_sunny 博客链接:http://www.cnblogs.com/yumiko/ 本站随笔均为原创 前言 本文着重阐述分区表的概念.优势,以及 常用分区表的使用方法及使用过程 ...
- oracle 乱码字符 测试,oracle 字符集乱码本质验证
oracle 字符集乱码本质验证 发表于:2014-03-27来源:Csdn作者:蘑菇丁点击数: 之前一直困惑为什么数据库字符集和客户端字符集是一致的但是当数据库插入到表里却成了乱码,今天在群里看见一 ...
- oracle 分区表转换,Oracle普通表与分区表转换
oracle 9i提供了dbms_redefinition包来实现数据库的表的在线重定义功能.在实际的应用上,我们可以利用这个包来进行:(1)堆表与 Oracle 9i提供了dbms_redefini ...
- oracle分区交换速度,oracle交换分区对数据的加载提速案例
author:skate time:2012/07/16 oracle交换分区对数据的加载提速案例 环境: os:linux db:oracle10g 其中一个库的数据加载非常慢,如何能提高数据的加载 ...
最新文章
- 如何使用窗体开发-理解那些函数怎么来的?
- idea 代码自动补全快捷键
- K8S滚动更新示例演示
- Installation error code: -103签名不一致错误
- HALCON学习之旅(五)
- Windows 会有开源的一天吗?
- 实时Web与WebSocket实践
- php中的代码延迟函数sleep() usleep()
- linux下的二进制文件查看器
- Tomcat免安装版+Eclipse配置
- 十大排序算法(C++版)
- Idea中jclasslib的安装与使用
- Kinect+unity 实现体感格斗闯关小游戏
- 【Spring】IoC,DI,两种代理方式,AOP定义和使用
- linux安全审计和加固工具-lynis
- 芯片短缺:今年圣诞节PS5货量恐不足
- 04- kubeadm init流程
- 计算机技能大赛奖品,第一届全国技能大赛都有哪些奖励政策?
- VUE + CSS画三角形
- 北京化工大学本科毕业论文答辩和论文选题PPT模板