Bài giảng Cơ sở dữ liệu - Chương 3: Mô hình quan hệ (Relational Data Model)
I. I. Một số khái niệm Định nghĩa quan hệ Khóa của quan hệ + Khoá chính + Siêu khoá + Khoá ứng viên + Khoá chỉ định + Khoá ngoại II. Cách chuyển từ mô hình ER sang mô hình quan hệ
Bạn đang xem trước 20 trang tài liệu Bài giảng Cơ sở dữ liệu - Chương 3: Mô hình quan hệ (Relational Data Model), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CÔ SÔÛ DÖÕ LIEÄUÛ Õ Ä
Chöông 3
MOÂ HÌNH QUAN HEÄÂ Ä
(Relational Data Model)
Chöông 3 MOÂ HÌNH QUAN HEÄÂ Ä
I. I. Moät soá khaùi nieämä á ù ä
Ñònh nghóa quan heää
Khoùa cuûa quan heäù û ä
II. II. Caùùch chuyeåån töøø moâ hâ ình ER sang moâ hâ ình quan heää
Khoaù chínhù
Sieâu khoaù â ù
Khoaù öùng vieânù ù â
Khoaù chæ ñònhù
Khoaù ngoaïiù ï
ÑÒNH NGHÓA QUAN HEÄ
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Cho taäp R = {A1, A2, , An} goïi laø taäp caùc thuoäc
tính. ÖÙng duïng vôùi moãi Ai coù moät taäp laø dom(Ai) goïi
laø mieàn giaù trò cuûa Ai.
U ñöôïc ñònh nghóa:
Moät quan heä r treân taäp caùc thuoäc tính R laø taäp hôïp
caùc aùnh xaï r = {t1, t2, , tm}
tj : R→ U
Vôùi haïn cheá tj(Ai) ∈ dom(Ai) i = 1,n
j = 1,m
)(1 i
n
i AdomU == U
+ Khi chæ ñeàà caääp ñeáán thuoääc tính cuûûa quan heää thì ngöôøøi ta
goïïi quan heää laøø löôïïc ñoàà quan heää.
Kyùù hieääu: R (A1, A2,, An)
Moäät löôïïc ñoàà CSDL goààm coùù nhieààu löôïïc ñoàà quan heää.
•+ R (A1, A2,, An) laøø löôïïc ñoàà quan heää caááp n.
+ Kyù hieäu moät quan heä r treân moät löôïc ñoà R cho tröôùcù ä ä ä â ä ï à ù laø ø
r(R).
Chöông 3 MOÂ HÌNH QUAN HEÄÂ Ä
Moät soá khaùi nieäm
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Moät doøng döõ lieäu coøn ñöôïc goïi laø 1 boä döõ lieäu cuûa quan heä.
SINHVIEN(MSSV, HOTEN, NGAYSINH, PHAI, DIACHI, MSLOP)
Quan heä SINHVIEN goàm coù 4 aùnh xaï t1, t2, t3, t4:
t1(MSSV) = ‘99001’, t1 (HOTEN) = “Nguyeãn Vaên A”,
CNTT023 LHP, Q3Nam 3/2/1980Nguyeãn Thaønh Hieáu0122122
CNTT011/20 NTMK, Q3Nöõ3/4/1982Traàn Thanh Vaân0112003
CNTT0012 TBT, QINöõ2/3/1980Nguyeãn Hoàng Anh0012002
CNTT00120 THÑ, QINam1/1/1982Traàn Vaân Anh0012001
MSLOPDIACHIPHAINGAYSINHHOTENMASV
Moät ví duï veà quan heä
Cho moät taäp R = {A1, A2, , An} vaø r(R). Khoùa chính cuûa
quan heä R laø taäp caùc thuoäc tính X ⊆ R coù tính chaát sau:
(i) Khoâng coù hai boä döõ lieäu coù cuøng giaù trò treân X.
(ii) Khoâng toàn taïi moät taäp X’ ⊂ X maø cuøng coù tính chaát i.
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Khoùa chính (Primary key)ù
Cho ví duï:
Sieâu khoaù (Supper key)â ù
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Laø moät taäp caùc thuoäc tính sao cho neáu coù 2 boä coù cuøng giaù
trò treân taäp thuoäc tính naøy thì cuõng coù cuøng giaù trò treân caùc
thuoäc tính coøn laïi.
Taäp hôïp taát caû caùc thuoäc tính cuûa moät quan heä luoân laø sieâu
khoùa.
Ví duï:
Khoaù öùng vieân (Candidate key)
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Khoaù öùng vieân laø moät sieâu khoaù maø khoâng toàn taïi taäp con naøo
cuûa noù cuõng laø sieâu khoaù.
Khoùa chính laø moät khoùa öùng vieân.
Ví duï:
Trong quan heä SINHVIEN thì X = {MSSV} laø khoùa öùng vieân
X = {HOTEN, NGAYSINH, PHAI, DIACHI, MSLOP} cuõng laø
khoùa öùng vieân.
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Khoaù chæ ñònh (Designated key)
Khi thieát keá vaø caøi ñaët thaät ngöôøi ta choïn moät khoùa naøo
ñoù trong caùc khoùa öùng vieân cuûa quan heä ñeå laøm vieäc.
Khoùa naøy goïi laø khoaù chæ ñònh vaø ñöôïc kyù hieäu baèng
caùch gaïch döôùi caùc thuoäc tính khoùa trong löôïc ñoà quan
heä. Keå töø ñoù ta goïi taäp caùc thuoäc tính naøy laø khoaù chính
cuûa quan heä.
Khoaù ngoaïi (Foreign key)
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Cho 2 löôïc ñoà quan heä: R1(A1, A2, An) vaø R2(B1, B2, Bm)
Giaû söûPK ⊆ {A1, ,An} vaø laø khoaù chính cuûa R1, FK ⊆ {B1,
,Bn}
Taäp FK laø khoùa ngoaïi cuûa R2 neáu vaø chæ neáu:
(i)Caùc thuoäc tính thuoäc taäp FK töông öùng coù cuøng mieàn giaù trò
vôùi caùc thuoäc tính trong taäp PK.
(ii)Vôùi moïi boä t2 cuûa R2, luoân toàn taïi 1 boä t1 thuoäc R1 sao cho
t2[FK] = t1[PK].
Raøng buoäc tham chieáu töø FK cuûa R2 ñeán R1 coù nghóa laø FK laø
moät khoùa ngoaïi tham chieáu ñeán khoùa chính cuûa R1.
SINHVIEN(MSSV, HOTEN, NGAYSINH, PHAI, DIACHI, MSLOP)
LOP (MSLOP, TENLOP)
MSLOP laø khoaù ngoaïi cuûa löôïc ñoà quan heä SINHVIEN
MSLOP tham chieáu MSLOP cuûa löôïc ñoà quan heä LOP
Khoaù ngoaïi (foreign key)
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Taäp thuoäc tính laø khoaù ngoaïi khoâng caàn töông öùng cuøng teân
vôùi taäp thuoäc tính ñoùng vai troø khoaù chính maø noù tham chieáu.
II. Chuyeån moâ hình ER sang moâ hình quan heä
Böôùc 1. Moãi loaïi thöïc theå
NGAYSINH
DIACHI
NHANVIEN
MANV
TEN
HONV
TENLOT TENNV
PHAI LUONG
NHANVIEN(MANV, HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH
Quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Keát quaû ñaït ñöôïc sau khi öùng duïng böôùc 1
NHANVIEN(MANV,HONV,TENLOT,TENNV,PHAI,LUONG,DIACHI, NGAYSINH
PHONGBAN (MAPB, TENPB)
DEAN (MADA, TENDA, DIADIEM_DA)
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Böôùc 2. Loaïi thöïc theå yeáu
II. Chuyeån moâ hình ER sang moâ hình quan heä
NHANVIEN
MANV
THANNHAN
TENTN PHAI NGSINH QUANHE
COTHAN
NHAN
THANNHAN( TENTN,PHAI,NGSINH,QUANHE)MANV,
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
NHANVIEN (MANV, HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH)
PHONGBAN (MAPB, TENPB)
DEAN (MADA, TENDA, DIADIEM_DA)
THANNHAN(MANV, TENTN,PHAI,NGSINH,QUANHE)
II. Chuyeån moâ hình ER sang moâ hình quan heä
Caùc löôïc ñoà quan heä coù ñöôïc töø caùc loaïi thöïc theå
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
Böôùc 3. Loïai moái keát hôïp (1, 1) – (1, 1)
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
DIACHI
NHANVIEN
MANV
TEN
HONV
TENLOT TENNV
PHAI LUONG
PHONGBAN
MAPB TENPB DIADIEM
QUANLY
(0,1)
(1,1)
NGAYSINH
X
NHANVIEN (MANV, HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH)
PHONGBAN (MAPB, TENPB, TRPHG)
T
S
Böôùc 4. Loaïi keát hôïp (1,1)- (1,n) khoâng coù thuoäc tính rieâng
NHANVIEN PHONGBAN
MAPB
TRUCTHUOC
(1,1)
(1,n)
NHANVIEN (MANV, HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH, PHG)
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
PHONGBAN (MAPB, TENPB, TRPHG)
Böôùc 5. Moái keát hôïp (1,1) – (1,n) coù thuoäc tính rieâng.
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
PHONGBAN
DEAN
Phuï traùch
Ngaøy BÑ
(1,1)
(0,n)
DEAN (MADA, TENDA, PHONG,
DIADIEM_DA, NGAYBÑ)
MADA TENDA
MAPB TENPB DIADIEM
DIADIEM
Böôùc 6. Moái keát hôïp (1,n) – (1,n)
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
NHANVIEN
MANV
MADA
DEAN TENDA
DDIEM_DA
PHANCONG
(1,n)
(1,n)
THOIGIAN
PHANCONG (MANV, MADA, THOIGIAN)
Böôùc 7. Thuoäc tính ña trò
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ
PHONGBAN
MAPB TENPB DIADIEM
DIADIEM_PHG (MAPB, DIADIEM)
NHANVIEN (MANV, HONV, TENLOT, TENNV, PHAI, LUONG, DIACHI, NGAYSINH, MANQL, PHG
PHONGBAN (MAPB, TENPB, TRPHG, NGAYBÑ)
DIADIEM_PHG (MAPB, DIADIEM)
DEAN (MADA, TENDA, NGAYBD, PHONG, DIADIEM_DA)
PHANCONG (MANV, MADA, THOIGIAN)
THANNHAN(MANV, TENTN,PHAI,NGSINH,QUANHE)
Löôïc ñoà CSDL sau khi chuyeån ñoåi
II. Chuyeån moâ hình ER sang moâ hình quan heä
Chöông 3 MOÂÂ HÌNH QUAN HEÄÄ