一次奇怪的主键冲突故障
故障现象:
在insert插入数据时报错
ERROR at line 1:
ORA-00001: unique constraint (XXXXX.SYS_C0055916) violated
问题分析:
检查是否该表存在相关主键数据
select id from xxxx.xxxx where id='************************';
检查发现不存在该id,故考虑不是数据重复导致。
经过查询,怀疑是表结构发生了什么问题(暂未找到问题,因为没有错误信息)
对表以及主键进行重建:
SQL> alter table sys_filterconfig move;
Table altered.
SQL> alter index SYS_C0055916 rebuild;
Index altered.
也可删除重建主键
alter table sys_filterconfig drop primary key;
alter table sys_filterconfig add constraint pk_idx_sys_filterconfig primary key(id);
正常数据插入不在报错。