我有一个SQL表,其中有两列StateSongInState
现在,我在这里有一个场景,其中StateSongInState列可以具有任何非唯一值,但是任何State不能具有相同的SongInState值。
表结构

ID     State     SongInState
1      AR        Dream on
2      MN        Dream on
3      TX        Hard sun
4      AR        I got a name


看到我可以具有相同的状态和songInState但不能为相同的状态重复SongInState
  这不应该发生。

ID     State     SongInState
 1      AR        Dream on
 2      AR        Dream on


AR不能拥有相同的歌曲,但是另一状态可以拥有它。
我可以那样做吗?我正在使用mySql和JAVA(仅供参考)。
任何帮助,将不胜感激。

最佳答案

在State和SongInState上创建一个多社区唯一索引

放在表中创建查询

UNIQUE KEY `UniqueStateSong` (`State` ,  `SongInState`)


或是否已经创建

ALTER TABLE  `mytable` ADD UNIQUE  `UniqueStateSong` (  `State` ,  `SongInState` )

09-04 23:36