2014-04-29 186 views
-2

在我的mysql表中,我存儲了在遊戲場中充當牆壁的行。表列是這樣的:如何在mysql中一起對兩列執行唯一約束?

  • ID
  • owner_id
  • X
  • Ÿ

id列,是主鍵,在owner_id是外鍵,x和y是牆的位置。我怎樣才能設置一個約束,即x和y列一起是唯一的? 如果我在兩列上都設置了唯一約束,那麼它將在每列上分別執行。這是因爲我不想在同一地點有2個現有的牆。但是牆壁可能會被摧毀並在以後再次建造。

任何人都知道如何做到這一點?

感謝

+3

可能的重複http://stackoverflow.com/questions/635937/how-do-i-specify-unique-constraint-for-multiple-columns-in-mysql? –

+0

有這麼多代表的人應該真的知道如何檢查重複項 –

回答

0
alter table yourTableName add unique index(x, y); 

這使得X,Y組合獨特的,不可複製,就像任何指標約束。