DBMS中的传递依赖

什么是传递依存关系

当间接关系引起功能依赖性时,称为传递依赖性。

如果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_价格($)

M08L09180
M03L05250
M05L09180


<列表>

Listing_ID

Listing_Type

L09犯罪
L05戏剧
L09犯罪


现在,以上关系为归一化的第三范式(3NF)。