每当我想从列中删除约束时,我都会收到错误。我看不出问题。我正在使用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
有什么问题?
答案 0 :(得分:1)
PostgreSQL中的主键默认称为<table>_pkey
,所以你可能想要这样的东西:
ALTER TABLE TableA DROP CONSTRAINT TableA_pkey;
您可以使用psql
在\d TableA
中查看名称。
答案 1 :(得分:0)
这意味着您选择了错误的约束名称 - 您选择列名而不是约束