gpt4 book ai didi

sql - PostgreSQL - 添加 CONSTRAINT UNIQUE 并且不验证现有数据

转载 作者:行者123 更新时间:2023-11-29 11:36:49 27 4
gpt4 key购买 nike

我在向表中添加新的 CONSTRAINT 时遇到了一个小问题。
我想添加一个 UNIQUE CONSTRAINT 并且不验证我表中的现有数据。

我在现有数据中有一些重复项,我想保持原样。

我写了一个查询:

ALTER TABLE tbl1 
ADD CONSTRAINT unique_const UNIQUE (fld1, fld2) NOT VALID;

但是它不工作,我得到一个错误:

UNIQUE constraints cannot be marked NOT VALID

我还尝试删除所有 TRIGGERS:

ALTER TABLE tbl1 DISABLE TRIGGER all;
ALTER TABLE tbl1 ADD CONSTRAINT unique_const UNIQUE (fld1, fld2);
ALTER TABLE tbl1 ENABLE TRIGGER all;

但它也不起作用。

有谁知道如何在不验证现有行的情况下添加UNIQUE CONSTRAINT

最佳答案

根据documentation of PostgreSQL 9.6 ,不幸的是,NOT VALID 选项目前只允许使用外键和 CHECK 约束。 This StackOverflow thread here可能相关并为替代解决方案提供想法/基本方法,尽管它是从 2014 年开始的。

关于sql - PostgreSQL - 添加 CONSTRAINT UNIQUE 并且不验证现有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40088845/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com