在数据库中,如果唯一性取决于多个列,那么验证唯一性的最佳方法是什么?

时间:2017-01-21 03:25:07

标签: database database-design

例如,我认为基于名称和地址列的记录是唯一的。我是仅使用两列(或可能更多)进行搜索,还是使用字符串连接的名称和地址值创建单独的列(并编制索引)? 例如:

name: "foo"
address: "NY"
unique_key: "foo:NY"

1 个答案:

答案 0 :(得分:1)

你不需要"认为"记录是唯一的。但是,您可以让数据库使用唯一约束或索引强制实现唯一性:

alter table t add constraint unq_t_name_address unique(name, address)