2

每次我想从列中删除约束时,都会出现错误。我看不出问题。我正在使用postgres。

所以我创建了一个包含两列的表:

CREATE TABLE TableA(
person_id INT PRIMARY KEY,
lastname CHAR(100)
)

我使用代码

ALTER TABLE TableA DROP CONSTRAINT person_id

从 person_id 中删除约束,但随后出现错误:

Error : ERROR:  constraint "person_id" of relation "tablea" does not exist

有什么问题?

4

2 回答 2

1

PostgreSQL 中的主键默认称为<table>_pkey,所以你可能想要这样的东西:

ALTER TABLE TableA DROP CONSTRAINT TableA_pkey;

psql例如,您可以在using中检查名称\d TableA

于 2012-01-08T17:37:56.837 回答
0

这意味着您选择了错误的约束名称 - 您选择了列名而不是约束

于 2012-01-08T17:38:00.610 回答