表继承:如何在分区间强制执行唯一约束?

6

我有一张表需要进行分区,但是我不知道如何处理唯一性约束。

是否可以在多个子表中创建唯一性约束?

1个回答

8
不,目前不可能实现。最好的方法是创建一个手动验证的触发器。

2
虽然这是正确的 (+1),但值得注意的是,如果唯一字段是表分区的主键,则定义在子表上的唯一约束将使整个表的值唯一。另一方面,由于将 INSERT 重定向到子表已经需要触发器,那么该触发器也可以检查唯一性。 - dezso
自PostgreSQL 11以来,可以在分区之间创建唯一约束:https://www.postgresql.org/docs/release/11.0/ “支持对分区表进行索引(Álvaro Herrera,Amit Langote)” - Sachin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接