0

我创建了 1 个存储user和的表uid

其他表存储用户的技能:

  • 如果uid = 111进入skill = aaa它将存储到技能表中,但我希望uid = 111再次进入时skill = aaa它不应该存储在技能表中。
  • uid = 222输入skill = aaa然后表将存储该值。

基本上我想关联uid技能表的技能领域,所以每个独特的uid都应该有独特的技能值,但是对于不同uid的技能可以是相同的。

4

1 回答 1

1

UId在两个 id和技能上使用复合主键。此外,要在两个表之间建立多对多关系,以便每个用户都有很多技能,并 规范您的表,最好以这种方式创建它:

Users桌子:

  • UserID首要的关键,
  • USername.
  • ...

Skills桌子:

  • SkillId首要的关键,
  • SkillName,
  • ...

联动表:

UsersSkills

  • UserId外键引用Users(UserId)
  • SkillId外键引用Skills(SkillId)

UserId然后重要的部分是在and上创建一个复合主键SkillId,这样每个用户 ID 的技能都是唯一的。

在您的示例中,技能aaa将存储在SkillsId = 1 的表中,用户UserId = 111存储在Users表中。然后UsersSkills将包含以下内容:

UserId SkillId
 111   1
于 2013-02-20T07:01:00.153 回答