MySQL跨表组合唯一键

时间:2014-12-19 00:01:39

标签: php mysql sql database foreign-keys

这是一个稍微复杂的设置,但请耐心等待。

基本上我正在创造一个'装扮'游戏。一个用户有很多衣服,衣服可以分配给很多用户,所以我创建了(我认为你称之为)一个数据透视表user_clothes来代表这个。

但衣服有一种类型,例如'dress','shoes'等。我只希望用户能够每层拥有一个项目,并希望数据库拒绝试图绕过它。有没有办法在user_clothes上创建一个唯一的组合键,根据我的数据库架构,每层只允许一个项目?

我有四个表:users,user_clothes,clothes,clothes_type

用户

  • id(PK)

clothes_type

  • id(PK)

  • id(PK)
  • clothes_type_id(FK:clothes_type.id)

user_clothes

  • id(PK)
  • user_id(FK:user.id)
  • clothes_id(FK:clothes.id)

0 个答案:

没有答案