天氣:陰資料庫實體表間有三種對應關係:一對地點:圖書館
人物:小夥伴們與我
事件:不宅家,在圖書館睡覺、讀書、寫字、搗手機....
收穫:生活是積極向上的,很美好的一天,因為是我的破蛋日,祝我生日快樂?~~~~加油,越來越好、越來越明亮~~☀️
一、一對多、多對多。
一、設計總結
1、設計e-r圖(先畫出實體,再畫實體間的聯絡)
2、根據e-r圖設計表和表結構(具體根據表關係進行設計)
二、各個表關係示例設計
1、一對一
示例:每個人都有唯一的年齡和姓名
user使用者表 id
agename118
林某220林可愛
2、一對多:
設計:多方新增一方的主鍵作為外來鍵
a.使用者表引入戶口表id作為外來鍵
b.使用者表的戶口表id 和 戶口表的id 字段型別要一致,型別是字元的話長度也要相同
c.通過新增主外來鍵約束,避免刪除資料時造成資料混亂
sql:
a.關鍵字:constraint 約束 references 參照
b.語句:alter table user add constraint household_user_fk foreign key(householdid) references household(id)
user使用者表(對應戶口) id
agename
householdid118
林某000000001220
林可愛000000001316
吼子000000002
household戶口表 id
householdname
familymember
000000001林家2
000000002吼家1
3、多對多:
示例:乙個人可以選擇多個愛好,每個愛好也有不同的人選擇
設計:先建表,再新增聯合主鍵、最後新增外來鍵約束(先後順序不可顛倒)
a.通過使用者愛好關係表建立使用者表和愛好表的聯絡;
b.userid、hobbyid作為關係表的聯合主鍵,確保不出現相同記錄;
c.多對多表建立主外來鍵後,要先刪除約束表內容再刪除主表內容。
sql:
a.建立聯合主鍵:alter table user_hobby add constraint user_hobby_pk primary key(userid,hobbyid)
b.外來鍵約束:
alter table user_hobby add constraint user_hobby_fk1 foreign key(userid) references user(id)
alter table user_hobby add constraint user_hobby_fk2 foreign key(hobbyid) references hobby(id)
user使用者表 id
agename118
林某220林可愛
hobby愛好表 id
hobbyname
hobbymembercount1跳舞
12唱歌2
3溜冰14
攀岩1user_hobby使用者愛好關係表
userid
hobbyid
createtime11
2020-11-28 10:14:0012
2020-11-28 11:16:2013
2020-11-28 12:12:1222
2020-11-28 13:14:1514
2020-11-28 14:24:00
資料庫設計 一對一 一對多 多對多)
關聯對映 一對多 多對一 存在最普遍的對映關係,簡單來講就如球員與球隊的關係 一對多 從球隊角度來說乙個球隊擁有多個球員 即為一對多 多對一 從球員角度來說多個球員屬於乙個球隊 即為多對一資料表間一對多關係如下圖 關聯對映 一對一 一對一關係就如球隊與球隊所在位址之間的關係,一支球隊僅有乙個位址,而...
資料庫設計(一對一 一對多 多對多)
一對一關係就如球隊與球隊所在位址之間的關係,一支球隊僅有乙個位址,而乙個位址區也僅有一支球隊。資料表間一對一關係的表現有兩種,一種是外來鍵關聯,一種是主鍵關聯。一對一外來鍵關聯,圖示如下 一對一主鍵關聯 要求兩個表的主鍵必須完全一致,通過兩個表的主鍵建立關聯關係。圖示如下 我們以學生和班級之間的關係...
資料庫設計 一對一 一對多 多對多)
關聯對映 一對多 多對一 存在最普遍的對映關係,簡單來講就如球員與球隊的關係 一對多 從球隊角度來說乙個球隊擁有多個球員 即為一對多 多對一 從球員角度來說多個球員屬於乙個球隊 即為多對一資料表間一對多關係如下圖 關聯對映 一對一 一對一關係就如球隊與球隊所在位址之間的關係,一支球隊僅有乙個位址,而...