数据库设计之从0到1 教你如何设计E-R图
上一年寫過一篇數(shù)據(jù)庫如何設(shè)計(jì),當(dāng)時(shí)也只是停留在概念的理解方面,今天有一次加深了對(duì)數(shù)據(jù)庫設(shè)計(jì)的理解
關(guān)于如何設(shè)計(jì)數(shù)據(jù)庫,
可以戳這個(gè)鏈接數(shù)據(jù)庫設(shè)計(jì)的六個(gè)步驟
接下來從實(shí)例來理解數(shù)據(jù)庫的設(shè)計(jì)
一,首先了解三個(gè)元素
二,實(shí)例分析
下面對(duì)
- 1:1
- 1:n
- m:n
三者做出具體分析
A、一個(gè)1:1關(guān)系可以與任意一端所對(duì)應(yīng)的關(guān)系模式合并也可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。
因?yàn)樽陨碜鳛榘嚅L,那么我就從班長 管理班級(jí)的角度去分析1:1的關(guān)系
原實(shí)體對(duì)應(yīng)關(guān)系模式分別為:
班級(jí)(班號(hào),專業(yè),人數(shù))
班長(學(xué)號(hào),姓名,專長)
班級(jí)(班號(hào),專業(yè),人數(shù),班長學(xué)號(hào))
班長(學(xué)號(hào),姓名,專長)
班級(jí)(班號(hào),專業(yè),人數(shù))
班長(學(xué)號(hào),姓名,專長,班號(hào))
B、一個(gè)1:n關(guān)系可以與n端所對(duì)應(yīng)的關(guān)系模式合并也可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。
因?yàn)樵谖覀兪菍W(xué)校是按照學(xué)院,系別的層次,而我在這兒解釋的時(shí)候就不加系別了,因?yàn)槲覀兤綍r(shí)也很少區(qū)分,所以就按照院長管理教師的角度去分析1:n的關(guān)系。
實(shí)體對(duì)應(yīng)的關(guān)系模式
系(院號(hào),院主任,電話,院名)
教師(教師號(hào),姓名,專業(yè),職稱,性別,年齡)
關(guān)系對(duì)應(yīng)的關(guān)系模式
管理(教師號(hào),系號(hào))
合并到實(shí)體“教師”后(只能合并到“多”的一端的關(guān)系模型):
教師(教師號(hào),姓名,專業(yè),職稱,性別,年齡,院號(hào))
C、一個(gè)m:n關(guān)系轉(zhuǎn)換為一個(gè)關(guān)系模式。轉(zhuǎn)換的方法為:與該關(guān)系相連的各實(shí)體的碼以及關(guān)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,新關(guān)系的碼為兩個(gè)相連實(shí)體碼的組合。
學(xué)生選修課程一直一來是一個(gè)m:n 的經(jīng)典問題,所以我們也拿來分析一下。 在這里,關(guān)系只能轉(zhuǎn)換為獨(dú)立模式
課程(課程號(hào),課程名,學(xué)時(shí),類別) 實(shí)體表
學(xué)生(學(xué)號(hào),姓名,性別,專業(yè),出生日期,照片) 實(shí)體表
選修(學(xué)號(hào),課程號(hào),分?jǐn)?shù)) 關(guān)系表
D、三個(gè)或三個(gè)以上實(shí)體間的多元關(guān)系轉(zhuǎn)換為一個(gè)關(guān)系模式
“講授”關(guān)系是一個(gè)三元關(guān)系,可以轉(zhuǎn)換為如下關(guān)系模式,其中課程號(hào)、職工號(hào)和書號(hào)為關(guān)系的組合碼:
講授(課程號(hào),職工號(hào),書號(hào))
到這兒,相信大家應(yīng)該對(duì)如何設(shè)計(jì)數(shù)據(jù)庫的邏輯結(jié)構(gòu)已經(jīng)有了一個(gè)簡單理解。
下面是一個(gè)簡單的復(fù)習(xí)。以供大家參考。
總結(jié)
以上是生活随笔為你收集整理的数据库设计之从0到1 教你如何设计E-R图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 因为有了这个画图工具集,老师同学都说我画
- 下一篇: 全面解析Redis