我有一个数据库表像这样:MySQL的检查约束
-- Table KNOWN_AS
create table `known_as`(
id int not null auto_increment,
person_id int not null,
default_name boolean not null,
first_name varchar(100) not null,
middle_name_1 varchar(100),
middle_name_2 varchar(100),
middle_name_3 varchar(100),
last_name varchar(100),
primary key(id),
foreign key(person_id) references `person`(id)
) engine=innodb;
当插入值,我要检查每一个独特的“PERSON_ID”有且只有一个真正的“DEFAULT_NAME”。
所有谷歌搜索等我迄今为止做了导致页面解释如何保持价值非负面,或如何确保价值是唯一的 - 而不是如何检查一个值在多个条目中是唯一的(但不是全部)。
任何帮助/指针非常感谢!
你的问题是指两个完全不同的东西:1. *我想检查每个唯一的“person_id”是否只有一个真正的“default_name”*和2. *如何检查一个值是在多个条目中独一无二(但不是全部)*你想要哪个? – eggyal