当间接关系引起功能依赖性时,称为传递依赖性。
如果P-> Q且Q-> R为真,则P-> R为传递依赖。
要实现3NF,请消除传递依赖性。
<电影列表>
Movie_ID | Listing_ID | Listing_Type | DVD_价格($) |
M08 | L09 | 犯罪 | 180 |
M03 | L05 | 戏剧 | 250 |
M05 | L09 | 犯罪 | 180 |
上表不在3NF中,因为它具有传递功能依赖性-
Movie_ID-> Listing_ID Listing_ID-> Listing_Type |
因此,以下内容具有传递功能依赖性。
Movie_ID-> Listing_Type
上面指出了关系<MovieListing>违反了第三范式(3NF)。
要删除违规,您需要拆分表并删除传递函数依赖项。
<电影>
Movie_ID
Listing_ID | DVD_价格($) | |
M08 | L09 | 180 |
M03 | L05 | 250 |
M05 | L09 | 180 |
<列表>
Listing_ID
Listing_Type | |
L09 | 犯罪 |
L05 | 戏剧 |
L09 | 犯罪 |
现在,以上关系为归一化的第三范式(3NF)。