DBMS中的部分依赖

什么是部分依赖?

当非素数属性在功能上依赖于候选键的一部分时,就会发生部分依赖。

第二范式(2NF)消除了部分依赖性。

让我们看一个例子-

示例

<StudentProject>

学生卡
项目编号
学生姓名
项目名
S01
199
凯蒂
地理位置
S02
120
奥利
集群探索

在上表中,我们有部分依赖关系;让我们看看-

主键属性是StudentID ProjectNo,以及

StudentID  =学生的唯一ID
StudentName  =学生的名称
ProjectNo =项目的 唯一ID
ProjectName  =项目的名称


如前 ,非素数属性(即StudentName ProjectName) 在功能上应依赖于候选键的一部分,才能部分依赖。

StudentName 可由下式确定StudentID,这使得关系偏相关。

项目名 可由下式确定ProjectNo,这使得关系偏相关。

因此,<StudentProject>关系在规范化中违反了2NF,被认为是错误的数据库设计。

要删除对2NF的部分依赖和违规,请分解表-

< StudentInfo >

学生卡
项目编号
学生姓名
S01
199
凯蒂
S02
120
奥利


<ProjectInfo>

项目编号
项目名
199
地理位置
120
集群探索


现在,该关系为数据库规范化的第二范式。