SQL 规范化查询
SQL normalization query
我正在为员工技能集创建一个项目,其中 table 是 SkillRepo
列:
EmpID, EmpName, SkillName, SkillProficiency, SkillCategory, Experience, Comments
我的问题是一个用户可能有很多技能。因此,如果我将 EmpID
作为主键,那么如何在同一个 table 中为同一个用户添加其他技能?我认为这里需要规范化,但我不知道怎么做?
您需要 两个 table - 一个用于 Employee
:
EmpId (PK), EmpName
和第二个 table Skills
定义技能并链接到 Employee
table:
SkillId (PK), EmpId (FK to Employee), SkillName, SkillProficiency, SkillCategory, Experience
这样,您可以在 Skills
中有 多行 ,所有行都引用 同一名员工(通过其EmpId
存储在 Skills
table)
一个 table 用于 emp
emp
EmpID, EmpName,
开启 emp_skill
emp_skill
EmpID, SkillName, SkillProficiency, SkillCategory, Experience, Comments
我正在为员工技能集创建一个项目,其中 table 是 SkillRepo
列:
EmpID, EmpName, SkillName, SkillProficiency, SkillCategory, Experience, Comments
我的问题是一个用户可能有很多技能。因此,如果我将 EmpID
作为主键,那么如何在同一个 table 中为同一个用户添加其他技能?我认为这里需要规范化,但我不知道怎么做?
您需要 两个 table - 一个用于 Employee
:
EmpId (PK), EmpName
和第二个 table Skills
定义技能并链接到 Employee
table:
SkillId (PK), EmpId (FK to Employee), SkillName, SkillProficiency, SkillCategory, Experience
这样,您可以在 Skills
中有 多行 ,所有行都引用 同一名员工(通过其EmpId
存储在 Skills
table)
一个 table 用于 emp
emp
EmpID, EmpName,
开启 emp_skill
emp_skill
EmpID, SkillName, SkillProficiency, SkillCategory, Experience, Comments