gpt4 book ai didi

postgresql - Postgres 中具有特殊逻辑的 2 个字段的唯一约束

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

我有一个包含 3 列国家、PersonID、评论的表格。
我想添加一个数据库约束,它将在同一国家/地区为一个 PersonID 启用多个记录,但会阻止将相同的 PersonId 添加到多个国家/地区。可能吗?

最佳答案

如果您可以添加另一个表,这应该是可行的:

CREATE TABLE PersonCountries (
PersonID char(7) not null,
Country char(3) not null,
constraint UQ_PersonCountries_Persons UNIQUE (PersonID),
constraint UQ_PersonCountries_XRef UNIQUE (PersonID,Country)
)

然后您可以在 PersonIDCountry 列上拥有从您的表到该表的外键。由于 PersonID,在上表中它本身必须是唯一的,你知道每个人只与一个国家相关联。第二个唯一约束是允许创建外键约束。

关于postgresql - Postgres 中具有特殊逻辑的 2 个字段的唯一约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24382299/

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