DBMS第二范式(2NF)

DBMS第二范式(2NF)

第二范式(2NF)中,首先关系必须是1NF
在第二范式(2NF)中,所有非关键属性都完全依赖于主键。

示例: 假设学校存储教师和教授科目信息相关的数据。 在学校里,教师可以教授多个科目。

老师(TEACHER)表的结构和数据如下 -

TEACHER_ID SUBJECT TEACHER_AGE
25 Chemistry 30
25 Biology 30
47 English 35
83 Math 38
83 Computer 38

在给定的表中,非主要属性TEACHER_AGE依赖于TEACHER_ID(TEACHER_ID列有两个83的值,同样对应的TEACHER_AGE属性的值都是38 ),它是候选键的适当子集。 这就是它违反2NF规则的原因。

要将给定的表转换为2NF,我们将其分解为两个表:

TEACHER_DETAIL 表的结构和数据如下 -

TEACHER_ID TEACHER_AGE
25 30
47 35
83 38

TEACHER_SUBJECT 表的结构和数据如下 -

TEACHER_ID SUBJECT
25 Chemistry
25 Biology
47 English
83 Math
83 Computer

目录

索引和B+树