Cơ sở dữ liệu - Chương 3: Mô hình quan hệ
• Lượcđồquan hệ(relation scheme)R(A1, A2, ., An):
– Trongđó R là tên củalượcđồquan hệ.
–A1, A2, , An
là các thuộc tínhcủalượcđồquan hệ.
•Một quan hệ(relation)r củalượcđồquan hệR(A1, A2, ., An) ký hiệu là r(R), là mộttậphợpcácbột
i, r = {t1, t2, , tm}. Mỗibột là một danh sách có thứtự
n giá trị t = <v1, v2, , vn> trongđó, từng giá trị vj
(1 ≤j ≤n) thuộctậphợp các phầntửmà thuộctính
Aj có thểnhậnlấyhoặcbằng rỗng (null).
•Một quan hệthựcralàmộtbảng dữliệu hai chiều
đượcđặt tên, có mộtsốcộtvàmộtsốdòng dữ
liệu.
11 CÔ SÔÛ DÖÕ LIEÄU Chöông 3 MOÂ HÌNH QUAN HEÄ (Relational Data Model) 2 Chöông 3 MOÂ HÌNH QUAN HEÄ I. Moät soá khaùi nieäm Ñònh nghóa quan heä Khoùa cuûa quan heä 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 23 ÑÒ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 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 4 • Lược đồ quan hệ (relation scheme) R(A1, A2, ..., An): – Trong đó R là tên của lược đồ quan hệ. – A1, A2, …, An là các thuộc tính của lược đồ quan hệ. • Một quan hệ (relation) r của lược đồ quan hệ R(A1, A2, ..., An) ký hiệu là r(R), là một tập hợp các bộ ti, r = {t1, t2, …, tm}. Mỗi bộ t là một danh sách có thứ tự n giá trị t = trong đó, từng giá trị vj (1 ≤ j ≤ n) thuộc tập hợp các phần tử mà thuộc tính Aj có thể nhận lấy hoặc bằng rỗng (null). • Một quan hệ thực ra là một bảng dữ liệu hai chiều được đặt tên, có một số cột và một số dòng dữ liệu. ÑÒNH NGHÓA QUAN HEÄ Chöông 3 MOÂ HÌNH QUAN HEÄ 35 + 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). + Ta dùng khái niệm “lược đồ quan hệ” để đề cập đến cấu trúc của một quan hệ trong khi khái niệm “quan hệ” đề cập đến thành phần dữ liệu của quan hệ đó. Chöông 3 MOÂ HÌNH QUAN HEÄ Moät soá khaùi nieäm 6 Chöông 3 MOÂ HÌNH QUAN HEÄ Quan hệ SINHVIEN có 5 thuộc tính là MSSV, HOTEN, NGAYSINH, PHAI, DIACHI, MSLOP và 4 bộ dữ liệu. 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) 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 MSLOPDIACHIPHAINGAYSINHHOTENMSSV Moät ví duï veà quan heä 47 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) 8 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. 59 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. 10 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ä. 611 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. 12 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. 713 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Ä 14 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Ä 815 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Ä 16 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Ä 917 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 18 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) 10 19 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_DA 20 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) 11 21 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) 22 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Ä 12 23 Löu yù 1. ÔÛ möùc quan nieäm (theå hieän qua ER): Moãi thöïc theå chæ mang thuoäc tính cuûa rieâng noù maø khoâng bao giôø mang thuoäc tính cuûa loaïi thöïc theå khaùc. Moái quan heä giöõa caùc thöïc theå ñöôïc theå hieän qua hình veõ (hình thoi). 2. ÔÛ möùc logic (theå hieän qua moâ hình quan heä): Moãi loaïi thöïc theå ôû möùc quan nieäm seõ coù 1 quan heä ñöôïc taïo ra, goàm caùc thuoäc tính ñôn cuûa loaïi thöïc theå, tröø thuoäc tính ña trò. Moãi thuoäc tính ña trò coù 1 quan heä ñöôïc taïo ra. Vôùi moãi loaïi moái keát hôïp ôû möùc quan nieäm, tuøy vaøo raøng buoäc tæ leä löïc löôïng: Coù 1 khoùa ngoaïi ñöôïc taïo ra ôû quan heä lieân quan hoaëc Coù 1 quan heä môùi ñöôïc taïo ra.
File đính kèm:
- Chuong_3_Mo_hinh_quan_he_.pdf