從3rd Normal Form Definition:3NF的定義是否相等?
數據庫是第三範式,如果它滿足下述條件 :
- 它是在第二正常形式。
- 沒有傳遞函數依賴關係。
通過傳遞函數依賴,我們的意思是我們在表中的下列的關係 :A是功能上依賴於B,且B是 函數依賴於C.在這種情況下,C是傳遞地對從屬 通過B.
我lucturer給了我們3NF第二defenition:
非黃金屬性可以不依賴於任何一組是不是一個超級鍵 (傳遞依賴)。
3NF的定義都相同嗎?爲什麼?
從3rd Normal Form Definition:3NF的定義是否相等?
數據庫是第三範式,如果它滿足下述條件 :
- 它是在第二正常形式。
- 沒有傳遞函數依賴關係。
通過傳遞函數依賴,我們的意思是我們在表中的下列的關係 :A是功能上依賴於B,且B是 函數依賴於C.在這種情況下,C是傳遞地對從屬 通過B.
我lucturer給了我們3NF第二defenition:
非黃金屬性可以不依賴於任何一組是不是一個超級鍵 (傳遞依賴)。
3NF的定義都相同嗎?爲什麼?
假設存在依賴於一組屬性的屬性X
這不是一個的Super結論鍵。這意味着X
依賴於的集合至少包含一個屬性np1
,該屬性不是超級密鑰的一部分。但np1
將依次取決於超級密鑰。 因爲np1
取決於以下的超級鍵,一個(也是唯一一個)將是真實的:
A.X
僅依賴於超級鍵=>這違揹我們最初的假設
或
B.X
僅取決於np1
=>這引入了一個傳遞依賴
如果X將真正取決於兩個SK和NP1,然後[SK,NP1]將成爲一個超密鑰 - 這是不可能的。
所以唯一可能的結論是這兩個定義是相等的。
你說過,''np1'將依次取決於一個超級密鑰「。你如何得出結論?它可能依賴於'np2',而'np2'不是超級密鑰的一部分,'np2'依賴於'np3',依此類推,直到超級密鑰'np-N'。 –
@StavAlfi - 是的,np1可能不直接依賴於SK,但您最終會到達SuperKey,如您所述。所以np1將直接或間接依賴於SK。 – Andy
兩者都是類似的聲明,但第二個是改善,因此更加迷人。
具體來說:關係是在2NF如果是1NF且沒有非主屬性是依賴關係的任何候選人鍵中的任何真子集。關係的非主要屬性是不屬於關係的任何候選關鍵字的一部分的屬性。
候選鍵是一個超級鍵,從中不能修剪其他屬性。
高亮部分給出了數據庫處於2NF形式(這是你的第一個節選)
「(傳遞依賴)」試圖說的是什麼? – philipxy
我認爲它具有與本文解釋相同的含義:https://www.essentialsql.com/get-ready-to-learn-sql-11-database-third-normal-form-explained-in-simple-english /但我不確定.. –
這並不意味着什麼。這是一個無關緊要的術語。但別的東西可能意味着什麼。 PS這篇文章中的定義和你的鏈接都是錯誤的。閱讀已出版的教科書。 – philipxy