后一個范式都是在滿足前一個范式的基礎(chǔ)上建立的.
1NF:無重復(fù)的列.表中的每一列都是不可分割的基本數(shù)據(jù)項.不滿足1NF的數(shù)據(jù)庫不是關(guān)系數(shù)據(jù)庫.
例如:聯(lián)系人表(姓名,電話),一個聯(lián)系人有家庭電話和公司電話,則不符合1NF,應(yīng)拆分為(姓名,家庭電話,公司電話).
原子性,數(shù)據(jù)不可再分
2NF:屬性完全依賴于主鍵.不能存在僅依賴于關(guān)鍵一部分的屬性.數(shù)據(jù)沒有冗余
例如:選課關(guān)系(學(xué)號,課程名稱,成績,學(xué)分),組合關(guān)鍵字(學(xué)號,課程名稱)作為主鍵.其不滿足2NF,
因為存在決定關(guān)系:課程名稱->學(xué)分即存在組合主鍵中的部分字段決定非主屬性的情況.會導(dǎo)致數(shù)據(jù)冗余,更新/插入/刪除異常.
3NF:屬性不傳遞依賴于其它非主屬性.非主鍵列必須直接依賴于主鍵,而不能傳遞依賴。
即不能是:非主鍵A依賴于非主鍵B,非主鍵B依賴于主鍵.
例如:學(xué)生表(學(xué)號,姓名,學(xué)院編號,學(xué)院名稱),學(xué)號是主鍵,姓名、學(xué)院編號、學(xué)院名稱都完全依賴于學(xué)號,
滿足2NF,但不滿足3NF,因為學(xué)院名稱直接依賴的是學(xué)院編號 ,它是通過傳遞才依賴于主鍵.
分享標(biāo)題:Mysql的三范式設(shè)計
文章起源:http://jinyejixie.com/article14/jjpide.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、品牌網(wǎng)站制作、App開發(fā)、網(wǎng)站收錄、企業(yè)建站、網(wǎng)頁設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)