您好,登錄后才能下訂單哦!
關(guān)系數(shù)據(jù)庫的范式有哪些?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
范化是在識別數(shù)據(jù)庫中的數(shù)據(jù)元素、關(guān)系,以及定義所需的表和各表中的項目這些初始工作之后的一個細化的過程。設(shè)計范式(范式,數(shù)據(jù)庫設(shè)計范式,數(shù)據(jù)庫的設(shè)計范式)是符合某一種級別的關(guān)系模式的集合。構(gòu)造數(shù)據(jù)庫必須遵循一定的規(guī)則。在關(guān)系數(shù)據(jù)庫中,這種規(guī)則就是范式。關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求,即滿足不同的范式。
關(guān)系數(shù)據(jù)庫有六種范式:
第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴德斯科范式(BCNF)、第四范式(4NF)和第五范式(5NF)。
滿足最低要求的范式是第一范式(1NF)。在第一范式的基礎(chǔ)上進一步滿足更多要求的稱為第二范式(2NF),其余范式以此類推。一般說來,數(shù)據(jù)庫只需滿足第三范式(3NF)就行了。
設(shè)計關(guān)系型數(shù)據(jù)庫時,遵從不同的規(guī)范要求,設(shè)計出合理的關(guān)系型數(shù)據(jù)庫。這些規(guī)范被稱作范式。越高的范式數(shù)據(jù)庫的冗余度就越低。
第一范式
無重復(fù)的列
數(shù)據(jù)庫表的每一列都是不可分割的原子數(shù)據(jù)項,而不能是集合,數(shù)組,記錄等非原子數(shù)據(jù)項。如果實體中的某個屬性有多個值時,必須拆分為不同的屬性
在任何一個關(guān)系數(shù)據(jù)庫中,第一范式(1NF)是對關(guān)系模式的設(shè)計基本要求,一般設(shè)計中都必須滿足第一范式(1NF)。不過有些關(guān)系模型中突破了1NF的限制,這種稱為非1NF的關(guān)系模型。
換句話說,是否必須滿足1NF的最低要求,主要依賴于所使用的關(guān)系模型。
第二范式
屬性完全依賴于主鍵
第二范式(2NF)是在第一范式(1NF)的基礎(chǔ)上建立起來的,即滿足第二范式(2NF)必須先滿足第一范式(1NF)。
當存在多個主鍵的時候,才會發(fā)生不符合第二范式的情況。比如有兩個主鍵,不能存在這樣的屬性,它只依賴于其中一個主鍵,這就是不符合第二范式。
如果存在不符合第二范式的情況,那么這個屬性和主關(guān)鍵字的這一部分應(yīng)該分離出來形成一個新的實體,新實體與原實體之間是一對多的關(guān)系。
第三范式
屬性不能傳遞依賴于主屬性(屬性不依賴于其它非主鍵屬性)
第三范式(3NF)是在第二范式(2NF)的基礎(chǔ)上建立起來的,即滿足第三范式(3NF)必須先滿足第二范式(2NF)。
如果某一屬性依賴于其他非主鍵屬性,而其他非主鍵屬性又依賴于主鍵,那么這個屬性就是間接依賴于主鍵,這被稱作傳遞依賴于主屬性。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。