说我有两列:一个表中的GroupName
,另一表中的Username
。如何约束这些列的值,以使添加到一个列的任何值在两个列中都是唯一的?最好以“非混乱”的方式。
答案 0 :(得分:0)
您提到的结构没有简单的方法。当然,有 一种实现触发器的方法,但这很麻烦。
可替代的数据模型解决了该问题,
create table things (
thingsId int auto_increment primary key,
name text,
type text,
. . .
check (type in ('group', 'user')),
unique (name)
);
这会将每种类型的事物放到一列中,然后施加唯一约束。