linux 刷新分区表,分区表更新时报ORA-14402的错误
【说明】在进行对Oralce的分区表的分区字段进行update操作的时候,就会报ORA-14402的错误,这种情况通过开启表的行移动来避免错误的发生;
【场景模拟】
1、创建分区表SCOTT.EMP_BAK
CREATE TABLE EMP_BAK
(
EMPNO NUMBER(4),
ENAME VARCHAR2(10 BYTE),
JOB VARCHAR2(9 BYTE),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2),
DLVL NUMBER(2)
)
LOGGING
PARTITION BY LIST (DLVL)
SUBPARTITION BY LIST (DEPTNO)
(
PARTITION EMP_P1 VALUES (1)
)
( SUBPARTITION EMP1_SUB1 VALUES (10) TABLESPACE USERS,
SUBPARTITION EMP1_SUB2 VALUES (20) TABLESPACE USERS,
SUBPARTITION EMP1_SUB3 VALUES (30) TABLESPACE USERS ),
PARTITION EMP_P2 VALUES (2)
( SUBPARTITION EMP2_SUB1 VALUES (10) TABLESPACE USERS,
SUBPARTITION EMP2_SUB2 VALUES (20) TABLESPACE USERS,
SUBPARTITION EMP2_SUB3 VALUES (30) TABLESPACE USERS )
)
2、模拟报错:对DEPTNO进行UPDATE的操作
SQL> update SCOTT.EMP_BAK SET DEPTNO=20 WHERE EMPNO=7782;
ORA-14402: updating partition key column would cause a partition change
3、启动行迁移
SQL> alter table scott.EMP_BAK enable row movement;
4、重新执行操作
SQL> update SCOTT.EMP_BAK SET DEPTNO=20 WHERE EMPNO=7782;
1 row updated.
5、关闭行迁移
SQL> alter table scott.EMP_BAK disable row movement;
报错的理解:
分区表某一行更新时,如果更新的是分区列,并且更新后的列值不属于原来的这个分区,update的操作就相当于把这行从这个分区中delete掉,并加到更新后所属的分区。等同于delete+insert的操作;
在进行update操作的时候,相应行的rowid的值是会跟着变化的,如果没有开启row movement那么肯定就更新不了。
【建议】在进行分区表操作的时候,需要跟业务进行沟通,作为分区条件的列,尽量不能改变;
linux 刷新分区表,分区表更新时报ORA-14402的错误相关推荐
- guid linux 识别的分区表_磁盘管理—MBR分区与GPT分区总结
描述: 1,什么是磁盘分区 磁盘分区是使用分区编辑器(partition editor)在磁盘上划分几个逻辑部分,盘片一旦划分成数个分区(Partition),不同类的目录与文件可以存储进不同的分区. ...
- oracle更新报错14402,Oracle GoldenGate 系列:Replicat 进程遇 OCI Error ORA-14402 错误解决办法...
生产环境发票管理库到总局主数据库 Replicat 进程因报如下错误 Abended: 2013-04-25 07:59:50 WARNING OGG-00869 OCI Error ORA-14 ...
- WSL(Windows Subsystem for Linux)升级到WSL2时报错:由于虚拟磁盘系统限制,无法完成请求的操作
WSL(Windows Subsystem for Linux)升级到WSL2时报错: 由于虚拟磁盘系统限制,无法完成请求的操作.虚拟硬盘文件必须是未压缩和未加密的文件,并且不能是稀疏文件. 解决方案 ...
- Kali Linux攻防系统(一:攻防系统Kali Linux下载安装与更新)
任务一:攻防系统Kali Linux下载安装与更新 1.1.安装Kali Linux虚拟机 1.1.1.电脑硬件配置至少达到 CPU 内存 存储 >四核 >4G >20G 1.1.2 ...
- 创建分区表+分区表的分类+创建散列分区表+查看散列分区表分区中的数据+创建列表分区表+查看列表分区表分区中的数据...
创建分区表 分区表的分类 范围分区:对数据表的某个值的范围进行分区,需要使用partition by range字句. 散列分区: 1通过hash算法均匀分布数据的一种分区类型. 2通过在I/O设备上 ...
- Linux配置环境变量source时报错:export `=‘ not a valid identifier的一般原因
linux配置环境变量source时报错:export `=' not a valid identifier的一般原因 原因就是你修改的 /etc/profile 文件里 你加过空格 我的代码如下: ...
- kali linux 2019教程,[教程]KALI LINUX 2.0 2019 更新国内源
2019年最新版本KALI 为 KALI 2019.1 下载地址:https://www.kali.org/downloads/ 有的新入门的朋友可能会问,为什么每次都无法手动更新 例如:Update ...
- SVN更新时报403错误
最近开发组使用SVN更新时经常会提示403错误,上网查了好久,说是权限的问题,但我感觉不象,可以提交,可以迁出,但就是更新时报错,如果是权限的问题,那这些操作就都不可以哦. 以前我都是先提交,再更新, ...
- Linux ubuntu 切换阿里更新源
2019独角兽企业重金招聘Python工程师标准>>> Linux ubuntu 切换阿里更新源 查看codename 首先查看自己的ubuntu系统的codename,直接导致你更 ...
- Linux上通过SUU更新Dell服务器固件
**转载来源 : ** : Linux上通过SUU更新Dell服务器固件 :https://www.jianshu.com/p/7c6603fbb9fd 一般Linux服务器都没有图形界面,如何升级服 ...
最新文章
- 基于Springboot实现宠物医院综合管理系统
- pip install 没有权限
- 基于.NET实现数据挖掘--关联规则分析算法
- Import 元素 (MSBuild)
- 架构设计师(Architect)的专业与角色
- 深入思考内积运算,再看傅里叶系数、伽辽金法本质
- 开源软件漏洞安全风险分析
- Linux之postfix邮件服务器搭建
- Oracle - CentOS7.4 静默安装Oracle11g
- 强化学习之Grid World的Monte Carlo算法解析【MiniWorld】SYSU_2023SpringRL
- 揭秘 手机群控 带来的利益
- 面部AR遥控器:使用AR制作动画
- 雷电模拟器adb devices返回127.0.0.1:5555 offline分析和解决办法
- 移动硬盘,U盘出现USBC病毒乱码恢复的可能性分析
- “F5G+EIoT“构建能源物联网,助力电力物联网数据服务
- 计算2000年1月1日到2020年1月1日相距多少天 java
- LoveChat独立部署即时通讯IM 私人部署 完善的售后体系
- Matlab:处理透明alpha通道的读写
- sock 文件方式控制宿主机_利用socket实现双机通信
- vue+element el-dialog弹出框会变暗解决办法
热门文章
- Apache POI电子表格/Spreadsheet
- 教你铁威马NAS如何实现外网访问
- PMP常考知识点核对单-7.项目成本管理
- mysql 5.6 for centos_编译安装MySQL 5.6.16 for CentOS 6.4
- 命令注入_深入分析SaltStack Salt命令注入漏洞
- linux版安全狗安装与使用
- Mac之忘记管理员名和密码
- 惠普HP MFP 163W 电脑无法通过WIFI打印
- 封装uniapp网络请求, 统一管理接口和怎么使用(完整版)
- 百度AIStudio之PaddleHub创意赛:你的名字,你的Face