數據庫三范式是什么?


第一范式( 1NF): 字段具有原子性,不可再分。 所有關系型數據庫系統都滿足第一范式)
數據庫表中的字段都是單一屬性的, 不可再分。 例如, 姓名字段, 其中的姓和名必須作為一
個整體, 無法區分哪部分是姓, 哪部分是名, 如果要區分出姓和名, 必須設計成兩個獨立的
字段。
第二范式( 2NF):
第二范式( 2NF) 是在第一范式( 1NF) 的基礎上建立起來的, 即滿足第二范式( 2NF) 必
須先滿足第一范式( 1NF)。
要求數據庫表中的每個實例或行必須可以被惟一地區分。 通常需要為表加上一個列, 以存儲
各個實例的惟一標識。 這個惟一屬性列被稱為主關鍵字或主鍵。
第二范式( 2NF) 要求實體的屬性完全依賴於主關鍵字。 所謂完全依賴是指不能存在僅依賴
主關鍵字一部分的屬性, 如果存在, 那么這個屬性和主關鍵字的這一部分應該分離出來形成
一個新的實體, 新實體與原實體之間是一對多的關系。為實現區分通常需要為表加上一個列,
以存儲各個實例的惟一標識。 簡而言之, 第二范式就是非主屬性非部分依賴於主關鍵字。
第三范式的要求如下:
滿足第三范式( 3NF) 必須先滿足第二范式( 2NF)。 簡而言之, 第三范式( 3NF) 要求一個
數據庫表中不包含已在其它表中已包含的非主關鍵字信息。
所以第三范式具有如下特征:
1, 每一列只有一個值
2, 每一行都能區分。
3, 每一個表都不包含其他表已經包含的非主關鍵字信息。
例如, 帖子表中只能出現發帖人的 id, 而不能出現發帖人的 id, 還同時出現發帖人姓名,
否則, 只要出現同一發帖人 id 的所有記錄, 它們中的姓名部分都必須嚴格保持一致, 這就
是數據冗余。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM