2012-01-08 109 views
2

每次我想從列中刪除約束時,都會出現錯誤。我看不到問題。我正在使用postgres。刪除約束時的錯誤消息

所以我創建了一個表有兩列:

我使用的代碼

ALTER TABLE TableA DROP CONSTRAINT person_id 

從爲person_id刪除約束,但後來我得到一個錯誤:

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

有什麼問題? PostgreSQL中

+0

的問題是,PostgreSQL有沒有命名的約束這樣...... – fge 2012-01-08 17:36:05

+0

只是一個側面說明:我敢確定你做*不*想'CHAR',但你需要'VARCHAR'。 – 2012-01-09 11:44:38

回答

1

主鍵在默認情況下稱爲<table>_pkey,所以你可能想是這樣的:

ALTER TABLE TableA DROP CONSTRAINT TableA_pkey; 

可以使用\d TableA檢查例如名稱在psql

0

這意味着,您選擇的約束錯名字 - 你選擇的列名,而不是約束