2013-02-02 46 views
1

我想知道如何使配對的列唯一鍵?配對唯一列MySQL?

我正在使用MySQL工作臺,現在我已經設置了兩列(後面跟隨)是UQ,我假設這是唯一鍵?

所以,當我試圖插入行,我試圖插入

follow  following 
    3    5 
    3    6 

但遵循的是唯一的關鍵。但我只想爲唯一一對做唯一的鑰匙,而不是個人號碼。

感謝

回答

2

如果我沒有記錯,你只設定爲每列的唯一密鑰。也許你想複合柱是UNIQUE,嘗試

ALTER TABLE tableName ADD CONSTRAINT tb_UQ UNIQUE (follow, following) 

如果運行ALTER聲明,示例以上數據是有效的,但如果你嘗試插入另一對3, 5,它註定要失敗。

+0

由於這個工程。我不得不刪除一些東西,但基本上我明白了,謝謝 – hellomello

1

如果您使用follow作爲PRIMARY鍵創建表,那麼RDBMS將強制實施基於該列的唯一性。

提供替換JW的建議,您可以更改主鍵:

ALTER TABLE tableName DROP PRIMARY KEY; 
ALTER TABLE tableName ADD CONSTRAINT tb_UQ PRIMARY KEY (follow, following);