2016-09-15 78 views
4

我有這個疑問在SQL:如何刪除postgres中的約束?

IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = object_id('[FK_states_list]') AND OBJECTPROPERTY(id, 'IsForeignKey') = 1) 
ALTER TABLE [custom_table] DROP CONSTRAINT [FK_states_list] ; 

我怎麼能寫在Postgres的這個查詢? 在此先感謝

回答

6

看來你想刪除約束,只要它存在。

在Postgres裏,你可以使用:

ALTER TABLE custom_table 
    DROP CONSTRAINT IF EXISTS fk_states_list; 

您也可以確保該表存在:

ALTER TABLE IF EXISTS custom_table 
    DROP CONSTRAINT IF EXISTS fk_states_list;