關係型數據庫的三個範式回顧

  • 第一範式(1NF):每一個屬性都是原子項,不可分割

    INF中所述的不可分割,是指在可分割的情況下必須分割,這是在應用環境中來判斷的,當屬性是文檔時,雖然文檔有段落標記,但還是不應該分割。

  • 第二範式:每個非主屬性要完全函數依賴於候選鍵,或者是主鍵。

    關鍵詞是“完全依賴”,與“部分依賴”或“局部依賴”相對,如果候選鍵或主鍵由兩個屬性組成,非主屬性不能只依賴與其中一個或部分屬性。

    比如:股票日行情表由股票代碼、股票名稱、日期、收盤價四個屬性組成,這就違反了2NF,因爲“股票名稱”部分依賴於“股票代碼”。

  • 第三範式:所有非主屬性對任何候選關鍵字都不存在傳遞依賴

    關鍵詞是“傳遞依賴”,如果非主屬性通過另一個非主屬性依賴主鍵,則是傳遞依賴。

    比如:股票基本信息表由股票代碼、股票名稱、企業名稱、所在地區、所在省份組成,其中“所在省份”依賴於所在地區,存在傳遞依賴。

 

---------------------------------------------

幾個相關術語:

  • 超鍵(super key):在關係中能唯一標識元組的屬性集稱爲關係模式的超鍵
  • 候選鍵(candidate key):不含有多餘屬性的超鍵稱爲候選鍵
  • 主鍵(primary key):用戶選作元組標識的一個候選鍵稱爲主鍵
  • 主屬性(Prime Attribute):候選鍵中的屬性稱爲主屬性
  • 非主屬性(Non-Key Attribute):不包含在任何候選鍵中的屬性稱爲非主屬性。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章