zoukankan      html  css  js  c++  java
  • ORA-02437 违反主键

    在给study用户下的semp表建立主键的时候,出现以下错误:
    SQL> alter table semp add constraint pk_emp primary key(empno);
    alter table semp add constraint pk_emp primary key(empno)
                                    *
    第 1 行出现错误:
    ORA-02437: 无法验证 (STUDY.PK_EMP) - 违反主键

         上网查了一下错误,原来是作为主键的empno有重复,删除掉重复后主键可以正常建立,具体操作如下:


    SQL> select empno,ename from semp;

         EMPNO ENAME
    ---------- ----------
          7369 SMITH
          8000 ALLEN
          7521 WARD
          7566 JONES
          7654 MARTIN
          7698 BLAKE
          7782 CLARK
          7788 SCOTT
          7839 KING
          7844 TURNER
          7876 ADAMS

         EMPNO ENAME
    ---------- ----------
          7900 JAMES
          7902 FORD
          7934 MILLER
          8100 geng
          8100 geng

    已选择16行。

    SQL> delete from semp where empno=8100;

    已删除2行。

    SQL> commit;

    提交完成。

    SQL> alter table semp add constraint pk_emp primary key(empno) enable novalidate
    ;

    表已更改。

    SQL> commit;

    提交完成。

    由于是无关紧要的测试数据,可以直接删除掉重复的数据,如果是正式数据,在处理的时候,要进行周密的测试。

  • 相关阅读:
    程序员常用资源工具集合(建议收藏)
    程序员常用资源工具集合(建议收藏)
    16个烧光你脑细胞的悖论
    2.2_模型的选择
    2.1_Scikit-learn数据集
    Sklearn数据集与机器学习
    1.4_数据的特征选择
    1.4_特征的选择
    1.3_数据的特征预处理
    1.2_数据的特征抽取
  • 原文地址:https://www.cnblogs.com/hllnj2008/p/5217494.html
Copyright © 2011-2022 走看看