首页 > 解决方案 > 如何将检查约束添加到 postgresql 物化视图?

问题描述

CREATE MATERIALIZED VIEW chk__foo AS (
    SELECT 1
        FROM ...
        WHERE ...
    ) WITH DATA
;

现在检查没有这样的条目

ALTER ??? ADD CONSTRAINT integrity_violated CHECK (0=1);

TABLE如果我 put或MATERIALIZED VIEWfor似乎无关紧要???,我会不断得到

chk__foo不是表或外部表

标签: sqlpostgresqlpostgresql-9.6materialized-viewscheck-constraints

解决方案


您不能向物化视图添加检查约束。

您可以通过创建表并使用TRUNCATEINSERT ... SELECT刷新数据来“手动滚动”。


推荐阅读