溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

數(shù)據(jù)庫(kù)范式總結(jié)

發(fā)布時(shí)間:2020-03-02 19:56:47 來(lái)源:網(wǎng)絡(luò) 閱讀:474 作者:不死戰(zhàn)魂 欄目:數(shù)據(jù)庫(kù)

1NF:數(shù)據(jù)庫(kù)表的每一列都是不可分割的基本數(shù)據(jù)項(xiàng)。

分析:沒(méi)有多個(gè)表示同一屬性的列;某一列的值不能為集合。幾不能將一對(duì)多關(guān)系表示為一個(gè)表的多個(gè)屬性或者一個(gè)屬性的多個(gè)值。

解決:創(chuàng)建新表,將“1”作為新表的外鍵。

舉例:



person


id
name
hobby1
hobby1
bobby3
1
mark
playing football
running
swimming


person

id
name
hobbies
1
mark
playing football,running,awimming

2NF:符合1NF;存在主鍵,并且不存在部分函數(shù)依賴(不存在依賴主鍵的一部分的列)

分析:存在組合鍵的情況下,某些列只依賴于組合主鍵的其中一部分,則不合符2NF。

解決:將涉及部分函數(shù)依賴的列移出舊表,保存在新表?;蚴褂萌斯ぶ麈I代替組合鍵。

舉例:


employee

department
name
managerOfDepartment
開(kāi)發(fā)部門
mark
Jenny

3NF:符合2NF;并且不存在傳遞依賴。

分析:同一個(gè)表中A列依賴B列,B列依賴C列。

解決:將涉及傳遞函數(shù)依賴的列移出舊表,保存在新表。

舉例:


customer

name
phone
address
zipCode
mark
1273283
廣州×××
510000


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI