gpt4 book ai didi

sql - Postgresql 唯一约束无效

转载 作者:行者123 更新时间:2023-12-01 21:30:41 25 4
gpt4 key购买 nike

我需要在文本字段中对表强制执行唯一约束,以确保用户不会输入包含相同地址的行。不过我不想验证它,需要保留旧记录

我用无效子句做了一些检查约束,但不确定如何使它唯一

如何使唯一检查约束无效

最佳答案

我会在表中添加一个新列:

ALTER TABLE atable ADD is_new boolean DEFAULT FALSE NOT NULL;
ALTER TABLE atable ALTER is_new SET DEFAULT TRUE;

然后旧行会被标记,你可以

CREATE UNIQUE ON atable (col1) WHERE is_new;

这将充当“条件唯一约束”。

请注意,在版本 11 之前添加具有默认值的列将导致(可能很慢)表重写。

关于sql - Postgresql 唯一约束无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62595029/

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