ORA-02432: cannot enable primary key – primary key not defined for table

文档解释

ORA-02432: cannot enable primary key – primary key not defined for table

Cause: Attempted to enable a primary key that is not defined for the table.

Action: Need to add a primary key definition for the table.

ORA-02432: cannot enable primary key – primary key not defined for table

该错误消息指出在为数据表定义主键之前,不允许使用“ENABLE PRIMARY KEY”语句。

官方解释

The ORA-02432 error message occurs when an attempt is made to enable a primary key on a table without first defining a primary key for the table.

常见案例

下面的示例会引发ORA-02432错误信息:

SQL>ENABLE PRIMARY KEY;

ERROR at line 1:

ORA-02432: cannot enable primary key – primary key not defined for table

正常处理方法及步骤

要解决ORA-02432错误,需要定义一个满足以下要求的主键:

1.主键必须是表的一列或多列,取决于数据库类型。

2.主键值不能重复。

3.主键值不能为空。

一旦满足了上述条件,可以使用ALTER TABLE语句定义主键,然后再尝试使用ENABLE PRIMARY KEY语句启用主键:

SQL>ALTER TABLE table_name

ADD CONSTRAINT pk_name PRIMARY KEY (col1, col2,…);

SQL>ENABLE PRIMARY KEY;

你可能感兴趣的