发布于 2026-09-10T10:59:38.137291Z · EnterpriseDB · EDB 博客

PostgreSQL 18 从 SQL:2023 引入了 NOT ENFORCED 约束,它和早就存在的 NOT VALID 完全不同。NOT VALID 允许先把约束加上而不立即校验存量数据,适合校验代价高昂的大表;NOT ENFORCED 则在数据库生命周期管理里承担另一种角色。EnterpriseDB 这篇文章把两者的定位讲清楚,指出它们针对的是同一类难题:数据量到了 TB 级之后,传统的约束强制执行本身就可能变成性能瓶颈。
PostgreSQL 18 从 SQL:2023 引入了 NOT ENFORCED 约束,它和早就存在的 NOT VALID 完全不同。NOT VALID 允许先把约束加上而不立即校验存量数据,适合校验代价高昂的大表;NOT ENFORCED 则在数据库生命周期管理里承担另一种角色。EnterpriseDB 这篇文章把两者的定位讲清楚,指出它们针对的是同一类难题:数据量到了 TB 级之后,传统的约束强制执行本身就可能变成性能瓶颈。
来源记录
- center.info_item · 048e9066c3491842 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · 048e9066c3491842 · 2026-10-03T04:08:55.967155Z