SQL> ALTER TABLE USERINFO_1
2 ADD CONSTRAINT PK_ID PRIMARY KEY(ID);
ADD CONSTRAINT PK_ID PRIMARY KEY(ID)
*
第 2 行出现错误:
ORA-02437: 无法验证 (SYSTEM.PK_ID) - 违反主键
正在给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用户下的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;
是不是ID字段有null值或重复值
alter table userinfo_1
add constraint pk_id primary key(id);