2011-03-23 43 views
2

我正在嘗試創建一個mysql表,並且陷入了讓它陷入困境的境地。需要mysql結構雙重唯一

2列:

aid 
bid 

關鍵是援助不是唯一和出價不是唯一的,但援助競價的組合是獨一無二的。

EG:

a b ok? 
0 1 y 
0 2 y 
0 7 y 
1 1 y 
1 7 y 
8 3 y 
0 7 N - since 0 7 is already in table... 

我怎樣才能讓這個表中的SQL所以它的工作原理?

回答

6
create table my_table (
a int, 
b int, 
unique key (a,b)); 
3

您需要創建這些列的唯一索引:

CREATE UNIQUE INDEX id_index ON mytable (aid,bid); 
2

只是唯一約束添加到表

ALTER TABLE t ADD UNIQUE KEY (aid, bid); 

你當你的代碼更改爲陷阱異常嘗試插入重複密鑰。