oracle 10g分区表,oracle10g--11gR2分区表汇总四
3.2.7.2 (分区表enable)—(非分区表diable keep index)—exchange--exchange
解释:
首先:分区表primary key是enable的,非分区表primary key是disable的;
其次:交换分区且包括including indexes;
然后:再次交换分区包括including indexes;
SQL> alter table t_no_par disable constraint ind_t_no_par keep index;
表已更改。
--此时将非分区表的primary key diable掉,然后指定keep index
SQL> select INDEX_NAME,PARTITION_NAME,STATUS from User_Ind_Partitions where INDEX_name='IND_T_PAR_RANGE';
INDEX_NAMEPARTITION_NAMESTATUS
------------------------------ ------------------------------ --------
IND_T_PAR_RANGEP_T_PAR_RANGE_0USABLE
IND_T_PAR_RANGEP_T_PAR_RANGE_1USABLE
SQL> SELECT index_name,index_type,status FROM USER_INDEXES WHERE index_NAME in ('IND_T_NO_PAR');
INDEX_NAMEINDEX_TYPESTATUS
------------------------------ --------------------------- --------
IND_T_NO_PARNORMALVALID
--索引仍然有效
SQL> select constraint_name,constraint_type,status,validated from User_Constraints where constraint_name in ('IND_T_NO_PAR','IND_T_PAR_RANGE');
CONSTRAINT_NAMEC STATUSVALIDATED
------------------------------ - -------- -------------
IND_T_PAR_RANGEP ENABLEDVALIDATED
IND_T_NO_PARP DISABLED NOT VALIDATED
--约束已经disable了,且not validated
SQL> select * from t_no_par;
未选定行
SQL> select * from t_par_range;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-3月-111101 a
01-4月-112202 b
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes;
表已更改。
--将分区表与非分区表做第一次交换,注意执行此命令前,各自约束和索引的状态
SQL> SELECT index_name,index_type,status FROM USER_INDEXES WHERE index_NAME in ('IND_T_NO_PAR');
INDEX_NAMEINDEX_TYPESTATUS
------------------------------ --------------------------- --------
IND_T_NO_PARNORMALVALID
SQL> select INDEX_NAME,PARTITION_NAME,STATUS from User_Ind_Partitions where INDEX_name='IND_T_PAR_RANGE';
INDEX_NAMEPARTITION_NAMESTATUS
------------------------------ ------------------------------ --------
IND_T_PAR_RANGEP_T_PAR_RANGE_0USABLE
IND_T_PAR_RANGEP_T_PAR_RANGE_1USABLE
--交换之后,各自约束和索引的状态
SQL> select * from t_no_par;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-3月-111101 a
SQL> select * from t_par_range;
TIMEID CITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-4月-112202 b
SQL> select constraint_name,constraint_type,status,validated from User_Constraints where constraint_name in ('IND_T_NO_PAR','IND_T_PAR_RANGE');
CONSTRAINT_NAMEC STATUSVALIDATED
------------------------------ - -------- -------------
IND_T_PAR_RANGEP ENABLEDVALIDATED
IND_T_NO_PARP DISABLED NOT VALIDATED
SQL> select * from t_no_par;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-3月-111101 a
SQL> select * from t_par_range;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-4月-112202 b
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes;
alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes
*
第1行出现错误:
ORA-14097: ALTER TABLE EXCHANGE PARTITION中的列类型或大小不匹配
--再想将刚交换到非分区表的数据交换回去,已经不可能了
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes;
alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes
*
第1行出现错误:
ORA-14097: ALTER TABLE EXCHANGE PARTITION中的列类型或大小不匹配
SQL> select * from t_no_par;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-3月-111101 a
SQL> select * from t_par_range;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-4月-112202 b
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par ;
alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par
*
第1行出现错误:
ORA-14097: ALTER TABLE EXCHANGE PARTITION中的列类型或大小不匹配
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par without validation;
alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par without validation
*
第1行出现错误:
ORA-14097: ALTER TABLE EXCHANGE PARTITION中的列类型或大小不匹配
--注意到,无论使用何种添加选项手段,都已经不行了
SQL> alter table t_no_par enable constraint ind_t_no_par;
表已更改。
SQL> alter table t_par_range exchange partition p_t_par_range_0 with table t_no_par including indexes;
表已更改。
--而一旦再次enable非分区表的primary key约束,又可以做数据交换了
SQL> select * from t_no_par;
未选定行
SQL> select * from t_par_range;
TIMEIDCITY_IDVALUE1 VALUE2
-------------- ---------- ---------- ---------- ----------
01-3月-111101 a
01-4月-112202 b
oracle 10g分区表,oracle10g--11gR2分区表汇总四相关推荐
- suse 11 oracle 10g,suse11+oracle10g安装
运行Vitualbox,启动已经安装好的Suse Enterprise 11 第一件事我要把oracle11g软件给那过去.之前的文章我会采用filezilla去传输,现在我用的是局域网共享. 启动s ...
- oracle 10g rac数据库,oracle 10g rac安装报错集锦
oracle 10g rac安装报错汇总 删除crs 1. 停止资源:关闭crs资源:crsctl stop resources 关闭crs: crsctl stop crs 2 ...
- Oracle 10g rac + ASM数据迁移(替换ASM中的磁盘,用新存储替换旧存储)
一.环境介绍 Redhat 5.8 Oracle 10g rac + ASM 目前数据库是一套Oracle 10g rac环境,使用的是ASM,ASM的存储空间来自多台存储设备,包括:XP12000. ...
- oracle10g索引不生效,oracle 10g分区表索引失效测试
一.测试环境 SQL> select * from v$version; BANNER ----------------------------------------------------- ...
- oracle 10g分区表,oracle10g-11gR2 分区表汇总一
在oracle10g(在10.2.0.4中测试)中:分区表共分为:range.list.hash,复合分区可以是:range-list.range-hash 测试之前先创建4个表空间tbs_1,tbs ...
- oracle 10g 分区管理,Oracle 10g分区表的自动维护
Oracle 10g分区表不支持自动化管理,一般都要手动创建分区,手动删除.今天给大家带来了一个自动化管理表空间的脚本. 本脚本主要由3个部分组成:sys_ConfigTable.sql.sys_pr ...
- oracle数据泵导入分区表,Oracle 10g 数据泵分区表的导出
Oracle 10g中数据泵支持本地导出/导入分区表的分区,但是NET_LINK不支持分区表的分区.以下为导出部分实验,导入与导出相识. 本地导出: C:\Users\xionglang>exp ...
- 【SQL开发实战技巧】系列(四十七):Oracle12C常用新特性☞非分区表在线转分区表online clause(不停业务+索引有效)
系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...
- oracle非分区表,转分区表
本文原出处: http://blog.csdn.net/tianlesoftware/archive/2009/10/23/4717318.aspx 将普通表转换成分区表有4种方法: 1. Expor ...
最新文章
- windows XP系统Stop c0000218 unknown hard error 蓝屏故障的解决方法
- C#把TextBox.Text的几万条数据按数据格式导出Excel报错:Insufficient memory to continue the execution of the program.
- NEFU 560 半数集
- com.fasterxml.jackson.databind.JsonMappingException: No content to map due to end-of-input
- .NET6发布了Preview2,这点超越过去10年!
- springboot配置跨mapper.xml的全局变量
- signal.h-----信号函数
- Oracle 11g 数据恢复 数据误删除后的恢复 0、执行 select log_mode from v$database;查看是否为归档模式 1、确定删除时间和被删除的表 04-23,GR
- IIS Express配置多站点同时运行
- 升级Xcode8后需要添加的一些权限
- NYOJ题目71-独木舟上的旅行(贪心)
- SQL优化常用方法51
- 实验三 大数据可视化工具—ECharts
- 未来电子服务领域信用系统的架构和发展趋势预测
- 自然辩证法与计算机科学与技术,自然辩证法与计算机科学技术.pdf
- 小程序使用腾讯视频插件及插件未授权使用
- 物联网定位系统:GPS、WiFi、基站、RFID…
- c语言大学教程答案pdf,C++大学教程(第九版) 保罗·戴特尔(Paul Deitel)等著 完整中文pdf扫描版[197MB]...
- Elementui蓝色阴影边框相关问题的解决方案
- Word论文写作公式居中、编号右对齐设置
热门文章
- 阿里前端开源的一些产品
- 不要解决:如何将JavaScript集合与目标相匹配
- java的getshape()_JAVA(Swing)中的镜像形状
- ubuntu18.04安裝搜狗輸入法
- matlab入门4-mdlInitializeSizes解析
- C#中关于updatePanel与freeTextBox不兼容的问题 当页面刷子新后,ftb不能输入内容的解决办法
- Request获取url各种信息的方法
- 以flash翻页方式展现图片的实现
- 取出客户端卸载CKEditor中的内容,放入数据库中的方案
- Python《wallpaper abyss壁纸》