电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

如何修复失效的主键索引?

来源:金蝶云社区作者:金蝶2024-09-238

如何修复失效的主键索引?

ORACLE11204

 

--A、屡次收到这样的提单故障,ORA-01502,

上传图片

 

--B、从名字上看,PK_HS_ACCTGPROCESSENTRY是个主键,故障应该是在对表做增删时,由于主键索引失效而引发这错误,,,但分析后,我有些糊涂,不明白如何把违反主键约束的数据插入表中,因为,假如索引未失效,唯一性有效,此时是无法把违反唯一性的数据插入库;假如索引已经失效,此时想插入这些数据,此时也会报错,因为索引无法使用,,,除非是插入时,忽略唯一性索引的校验,插入完后,再ENABLE 索引,结果报错,,,

 

--C、不过这不妨碍修复故障,下面是我在测试环境模拟修复该故障,

 

--1 使用sqlplus 工具,以该账号身份(上述故障中的CLOUDPRD),登录数据库。

--2 查看确认该索引的状态。

上传图片

 

--3 备份数据,预防万一。

上传图片

 

--4 删除主键关联的索引,然后查看该索引是否还存在?确认索引已经丢弃。

上传图片

 

--5 查看表中的重复数据量。

上传图片

 

--6 删除重复数据。

上传图片

 

--7 修复索引。

上传图片

 

--8 查看修复后的索引状态。

上传图片

 

 

 

-D、下面是相关步骤的执行语句

--2

select status from user_indexes where index_name='PK_HS_ACCTGPROCESSENTRY';

--3

create table t_hs_acctgprocessentry_240603 as select * from t_hs_acctgprocessentry;

--4

alter table t_hs_acctgprocessentry disable primary key drop index;

--5

Select count(*) from

(select row_id, fprocessentryid, fordetbyseq, fseqentryid, seq from

         (select rowid row_id, fprocessentryid,fordetbyseq,fseqentryid,

      

如何修复失效的主键索引?

ORACLE11204 --A、屡次收到这样的提单故障,ORA-01502, --B、从名字上看,PK_HS_ACCTGPROCESSENTRY是个主键,故障应该是在对表做增删时,...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信