【发布时间】:2015-10-30 00:24:58
【问题描述】:
我有一个表,我需要删除作为复合键的主键并使其成为基于单个值的主键。 我删除了原来的主键:
SQL> alter table depositor
2 drop primary key;
Table altered.
但是当我尝试添加新的背面时,我收到一条错误消息。
SQL> alter table depositor
2 add primary key (account_number);
alter table depositor
*
ERROR at line 1:
ORA-02437: cannot validate (ZSMITH.SYS_C0084996) - primary key violated
PK不是掉了吗?我没有正确添加回来吗?
【问题讨论】:
-
您确定新的主键列在您现有的数据上都是不同的并且永远不会为空吗?
-
那是重复的帐号
标签: sql oracle primary-key ddl alter-table