我创建了 1 个存储user
和的表uid
。
其他表存储用户的技能:
- 如果
uid = 111
进入skill = aaa
它将存储到技能表中,但我希望uid = 111
再次进入时skill = aaa
它不应该存储在技能表中。 - 并
uid = 222
输入skill = aaa
然后表将存储该值。
基本上我想关联uid
技能表的技能领域,所以每个独特的uid
都应该有独特的技能值,但是对于不同uid
的技能可以是相同的。
我创建了 1 个存储user
和的表uid
。
其他表存储用户的技能:
uid = 111
进入skill = aaa
它将存储到技能表中,但我希望uid = 111
再次进入时skill = aaa
它不应该存储在技能表中。uid = 222
输入skill = aaa
然后表将存储该值。基本上我想关联uid
技能表的技能领域,所以每个独特的uid
都应该有独特的技能值,但是对于不同uid
的技能可以是相同的。
UId
在两个 id和技能上使用复合主键。此外,要在两个表之间建立多对多关系,以便每个用户都有很多技能,并 规范您的表,最好以这种方式创建它:
Users
桌子:
UserID
首要的关键,USername
.Skills
桌子:
SkillId
首要的关键,SkillName
,联动表:
UsersSkills
:
UserId
外键引用Users(UserId)
,SkillId
外键引用Skills(SkillId)
。UserId
然后重要的部分是在and上创建一个复合主键SkillId
,这样每个用户 ID 的技能都是唯一的。
在您的示例中,技能aaa
将存储在Skills
Id = 1 的表中,用户UserId = 111
存储在Users
表中。然后UsersSkills
将包含以下内容:
UserId SkillId
111 1