Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在SQLServer中为这种结构设计数据库_Sql Server_Database_Database Design - Fatal编程技术网

Sql server 如何在SQLServer中为这种结构设计数据库

Sql server 如何在SQLServer中为这种结构设计数据库,sql-server,database,database-design,Sql Server,Database,Database Design,在我的第一个表中,列是这是我的主表 ID Position jobDescription minExp maxExp LastDate InterviewDate Project HiringManager interviewer Primaryskills SecondorySkills 第二个表包含主要技能PrimarySkill表 ID PrimarySkills 第三个表包含第二个技能 ID SecondarySkills 第四个表包含面试官 问题是,如果一个人对一份工作拥有多种技

在我的第一个表中,列是这是我的主表

ID
Position
jobDescription
minExp
maxExp
LastDate
InterviewDate
Project
HiringManager
interviewer
Primaryskills
SecondorySkills
第二个表包含主要技能PrimarySkill表

ID
PrimarySkills
第三个表包含第二个技能

ID
SecondarySkills
第四个表包含面试官


问题是,如果一个人对一份工作拥有多种技能和多个面试官,那么如何在主表中插入主要技能表、次要技能表和面试官表中的值。我不想用逗号分隔的形式存储值,您可以创建一个连接表,它是连接这两个表的第三个表,如果您要创建数据模型,则需要它。示例模型将使用以下表格:

Person (ID, Position, ...)
Skills (ID, Skill)
PrimarySkills (Person.ID, Skill.ID)
SecondarySkills (Person.ID, Skill.ID)
虽然可能不需要将技能分为主要技能和次要技能,但最好添加一个布尔值来指示技能是主要技能还是次要技能,如下所示:

PersonSkills (Person.ID, Skill.ID, IsPrimary (bool))

通常通过一个只存储链接的额外表来进行多个链接,这样就可以有多个具有相同MasterID的条目:

表PrimarySkillsLinks: 马斯特里德
PrimarySkillID

您已经多次问过同一个问题。如果你接受了人们花时间提供给你的答案,也许你会得到更好的答案。。。提前付款。