0

我有以下结构的表

id -- auto increment
name -- unique
group -- integer
Primary key(name,group)

我不想添加具有相同名称和组值的元素。

(i.e ("test",1) and ("test",1) should not be inserted.... and 
        ("test",1),("test",2) can be inserted).

如果不存在,我想插入一个值。我检查了 链接

使用上面的链接可以进行操作,但问题是它只检查名称作为键而不与组结合(即插入值(“test”,1)和(“test”,2)不是发生)

我怎样才能做到这一点。

4

2 回答 2

0

如果您的主键是namegroup

你可以做INSERT IGNORE

INSERT IGNORE INTO yourTable
SET name = 'test',
    group = 1;

只要它们都是您的主键的一部分,这应该检查它们的组合

于 2013-04-05T04:34:38.897 回答
0

我认为名称列唯一的问题,请删除名称列的唯一约束并尝试INSERT IGNORE INTO yourTable(name,group)values("test",2)

于 2013-04-05T04:48:01.570 回答