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ệ

pdf21 trang | Chia sẻ: candy98 | Lượt xem: 712 | Lượt tải: 0download
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ÄÄ