ORA-02437: cannot validate(主键或唯一键约束名) - primary key violated

来源:互联网 发布:js时间戳比大小 编辑:程序博客网 时间:2024/05/14 14:34

今天在对现有表建立唯一索引时遇到该Ora异常

ORA-02437: cannot validate(主键或唯一键约束名) - primary key violated

主键或唯一键的数据有重复值,一般是enable primary key或数据库已有数据时建立主键出现的错误.


解决方法:

查找到重复键,然后修改数据,使得其不存在重复记录


查找重复记录SQL:

 

[java] view plaincopy
  1. select *  
  2.   from t_test a  
  3.  where exists (select rule_id  
  4.           from t_test b  
  5.          where a.rule_id = b.rule_id  
  6.          group by rule_id  
  7.         having(count(*)) > 1)