Postgres删除排除约束

时间:2017-10-11 19:40:11

标签: postgresql

我运行此DDL以向表中添加排除约束:

ALTER TABLE recurring_charges
  ADD EXCLUDE USING GIST (period WITH &&);

现在我想删除约束 - 我该怎么做?我尝试了ALTER TABLE ... DROP EXCLUDEDROP CONSTRAINT的一些变体,但似乎没有任何效果。

2 个答案:

答案 0 :(得分:0)

想出来 - 看起来它为我必须使用的约束生成了一个名称。

ALTER TABLE recurring_charges
  DROP CONSTRAINT recurring_charges_period_excl;

现在我已经更新了我的原始DDL以使用完整的ADD CONSTRAINT语法,这样我就可以命名我的约束而不是依赖于自动命名行为:

ALTER TABLE recurring_charges
  ADD CONSTRAINT recurring_charges_period_excl EXCLUDE USING GIST (period WITH &&);

答案 1 :(得分:0)

要添加到上述答案中,要找到约束名称,可以使用以下命令在psql中找到它:

Value of leaf C1: 58 Value of leaf C2: 7 Sum of nodes B1: 115 Value of leaf C3: 10 Value of leaf C4: 20 Sum of nodes B2: 80 Sum of nodes A: 295