Bài giảng Xác định ràng buộc toàn vẹn - Trần Ngọc Bảo

pdf 34 trang huongle 4730
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Xác định ràng buộc toàn vẹn - Trần Ngọc Bảo", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_xac_dinh_rang_buoc_toan_ven_tran_ngoc_bao.pdf

Nội dung text: Bài giảng Xác định ràng buộc toàn vẹn - Trần Ngọc Bảo

  1. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU Xác định ràng buộc toàn vẹn Trần Ngọc Bảo Email: tnbao.dhsp@gmail.com
  2. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU XXÁÁCC ĐĐỊỊNHNH CCÁÁCC RRÀÀNGNG BUBUỘỘCC TOTOÀÀNN VVẸẸNN • Qui tắc xác định các loại ràng buộc • Xác định ràng buộc có bối cảnh 1 quan hệ • Xác định ràng buộc có bối cảnh nhiều quan hệ
  3. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU XXÁÁCC ĐĐỊỊNHNH CCÁÁCC RRÀÀNGNG BUBUỘỘCC TOTOÀÀNN VVẸẸNN • Qui tắc xác định các loại ràng buộc • Xác định ràng buộc có bối cảnh 1 quan hệ • Xác định ràng buộc có bối cảnh nhiều quan hệ
  4. Phân loại ràng buộc U U Ệ Ệ N N • Ràng buộc có bối cảnh 1 quan hệ LI LI Ẹ Ẹ Ữ Ữ D D N V N V ‰ Ràng buộc miền giá trị À À Ở Ở S S ‰ Ràng buộc liên bộ Ơ Ơ C TO C TO Ộ Ộ ‰ Ràng buộc liên thuộc tính N C N C Ầ Ầ NG BU NG BU • Ràng buộc có bối cảnh nhiều quan hệ C PH C PH À À Ọ Ọ ‰ Ràng buộc tham chiếu/khóa ngoại NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả ‰ Ràng buộc liên bộ C C Á Á I GI I GI X X ‰ Ràng buộc liên thuộc tính À À B B ‰ Ràng buộc chu trình TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H4HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (4)(4)
  5. Biểu diễn ràng buộc U U Ệ Ệ • Với mỗi ràng buộc cần phải thực hiện N N LI LI Ẹ Ẹ Ữ Ữ D D N V N V ‰ Phát biểu ràng buộc À À Ở Ở S S Phát biểu nội dung của ràng buộc Ơ Ơ C TO C TO Ộ Ộ Biễu diễn bằng ngôn ngữ hình thức N C ‰ N C Ầ Ầ Biểu diễn ràng buộc bằng ngôn ngữ đại số quan hệ NG BU NG BU C PH C PH À À Ọ ‰ Xác định bối cảnh Ọ NH R NH R Xác định các quan hệ có ảnh hưởng đến ràng buộc này Ị Ị NG H NG H Đ Đ Ả Ả C C ‰ Xây dựng bảng tầm ảnh hưởng Á Á I GI I GI X X À À B B Xác định các thao tác thêm xóa sửa của mỗi quan hệ (trong bối cảnh) có ảnh hưởng đến ràng buộc này TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H5HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (5)(5)
  6. Ràng buộc miền giá trị U U Ệ Ệ N N • Định nghĩa LI LI Ẹ Ẹ Ữ Ữ D D N V N V ‰ Ràng buộc miền giá trị qui định tập giá trị mà À À Ở Ở một thuộc tính có thể nhận. S S Ơ Ơ C TO C TO Ví dụ: thuộc tính Phái của quan hệ nhân viên có Ộ Ộ N C N C hai giá trị ‘Nam’ hoặc ‘Nữ’ Ầ Ầ NG BU NG BU C PH C PH À À • Cách xác định Ọ Ọ ‰ Tìm trong tân từ của mỗi quan hệ các thuộc NH R NH R Ị Ị NG H NG H Đ Đ tính có qui định tập giá trị mà thuộc tính này có Ả Ả C C thể nhận Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H6HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (6)(6)
  7. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, DCHI, MANGANH) Ữ D D N V N V À À Ở Tân từ: Mỗi sinh viên có một mã số duy nhất (MASV), một họ tên Ở S S (HOTEN), thuộc một phái (PHAI) PHAI = 0: Nam, PHAI = 1: Nữ, có Ơ Ơ C TO C TO một ngày sinh (NGAYSINH), có một địa chỉ (DCHI), và học một Ộ Ộ N C N C ngành (MANGANH) Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ Qui định thuộc tính PHAI có 2 giá trị: 0 – Nam, 1 - Nữ là NH R NH R Ị Ị một ràng buộc miền giá trị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H7HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (7)(7)
  8. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, DCHI, MANGANH) Ữ D D N V N V À À Ở Tân từ: Mỗi sinh viên có một mã số duy nhất (MASV), một họ tên Ở S S (HOTEN), thuộc một phái (PHAI) PHAI = 0: Nam, PHAI = 1: Nữ, có Ơ Ơ C TO C TO một ngày sinh (NGAYSINH), có một địa chỉ (DCHI), và học một Ộ Ộ N C N C ngành (MANGANH) Ầ Ầ Qui định thuộc tính PHAI có 2 giá trị: 0 – Nam, 1 - Nữ là NG BU NG BU một ràng buộc miền giá trị C PH một ràng buộc miền giá trị C PH À À Ọ Ọ NH R NH R • Biểu diễn ngôn ngữ hình thức Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À ∀∀ svsv ∈∈ SINHVIEN,SINHVIEN, sv.PHAIsv.PHAI ∈∈ [0,1][0,1] B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H8HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (8)(8)
  9. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, DCHI, MANGANH) Ữ D D N V N V À À Ở Tân từ: Mỗi sinh viên có một mã số duy nhất (MASV), một họ tên Ở S S (HOTEN), thuộc một phái (PHAI) PHAI = 0: Nam, PHAI = 1: Nữ, có Ơ Ơ C TO C TO một ngày sinh (NGAYSINH), có một địa chỉ (DCHI), và học một Ộ Ộ N C N C ngành (MANGANH) Ầ Ầ Qui định thuộc tính PHAI có 2 giá trị: 0 – Nam, 1 - Nữ là NG BU NG BU một ràng buộc miền giá trị C PH một ràng buộc miền giá trị C PH À À Ọ Ọ NH R • Bối cảnh: SINHVIEN NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À B B Quan hệ Thêm Xóa Sửa SINHVIEN + - +(PHAI) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN H9HỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (9)(9)
  10. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 2. NGANH(MANGANH, TENNGANH, SOCD, TSSV) D D N V N V À À Ở Ở Tân từ: Mỗi ngành có một mã duy nhất (MANGANH), có một tên S S Ơ duy nhất (TENNGANH). SOCD là số lượng chuyên đề mà một Ơ C TO C TO Ộ Ộ sinh viên theo học ngành có mã ngành có MANGANH phải học. N C N C TSSV cho biết tổng số sinh viên đã từng theo học ngành này. Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ Quan hệ NGANH không có ràng buộc miền giá trị NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN10 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (10)(10)
  11. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 3. CHUYENDE(MACD, TENCD, SOSVTD) D D N V N V À À Ở Ở Tân từ: Mỗi chuyên đề có một mã duy nhất (MACD), có một tên S S Ơ duy nhất (TENCD). SOSVTD cho biết số sinh viên tối đa có thể Ơ C TO C TO Ộ Ộ chấp nhận được mỗi khi có một lớp được mở cho chuyên đề có N C N C mã là MACD. Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ Quan hệ CHUYENDE không có ràng buộc miền giá trị NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN11 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (11)(11)
  12. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 4. CD_NGANH(MACD, MANGANH) D D N V N V À À Ở Ở Tân từ: Mỗi chuyên đề có thể được học bởi nhiều ngành S S Ơ Ơ C TO (MANGANH), mỗi ngành có thể học nhiều chuyên đề (MACD). C TO Ộ Ộ Mỗi ngành học tối đa là 8 chuyên đề N C N C Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ Quan hệ CD_NGANH không có ràng buộc miền giá trị NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN12 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (12)(12)
  13. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ 5. CD_MO(MACD, NAM, HOCKY) Ữ D D N V N V À À Ở Ở Tân từ: Mỗi bộ của quan hệ CD_MO thể hiện một chuyên đề S S (MACD) được mở ra trong một học kỳ (HOCKY) của một năm học Ơ Ơ C TO C TO (NAM). Thông thường, số sinh viên của ngành là không nhiều Ộ Ộ N C N C nên đối với ngành “Mạng máy tính” không được mở cùng một Ầ Ầ chuyên đề trong 2 học kỳ liên tiếp của cùng một năm học. NG BU NG BU C PH C PH À À Ọ Ọ Quan hệ CD_MO không có ràng buộc miền giá trị NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN13 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (13)(13)
  14. Ràng buộc miền giá trị U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 6. DANGKY(MASV, MACD, NAM, HOCKY) D D N V N V À À Ở Ở Tân từ: Mỗi bộ của quan hệ DANGKY thể hiện việc một sinh viên S S Ơ (MASV) đăng ký học một chuyên đề (MACD) nào đó trong một Ơ C TO C TO Ộ Ộ học kỳ (HOCKY) của một năm học (NAM). N C N C Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ Quan hệ DANGKY không có ràng buộc miền giá trị NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN14 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (14)(14)
  15. Ràng buộc miền giá trị U U BÀI 2: QUẢN LÝ THỰC ĐƠN Ệ Ệ BÀI 2: QUẢN LÝ THỰC ĐƠN N N LI LI Ẹ Ẹ Ữ 1. LOP (MALOP, TENLOP, NIENKHOA, KHOI) Ữ D D N V N V À À Ở Ở Qui định thuộc tính KHOI có 3 giá trị: MAM, CHOI, LA là S S một ràng buộc miền giá trị Ơ Ơ C TO C TO Ộ Ộ N C N C • Biểu diễn ngôn ngữ hình thức Ầ Ầ NG BU NG BU C PH C PH ∀ l ∈ LOP, l.KHOI ∈ [‘MAM’,‘CHOI’, ‘LA’] À ∀ l ∈ LOP, l.KHOI ∈ [‘MAM’,‘CHOI’, ‘LA’] À Ọ Ọ NH R • Bối cảnh: LOP NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B LOP + - +(KHOI) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN15 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (15)(15)
  16. Ràng buộc miền giá trị U U BÀI 2: QUẢN LÝ THỰC ĐƠN Ệ Ệ BÀI 2: QUẢN LÝ THỰC ĐƠN N N LI LI Ẹ Ẹ 3. MONAN (MAMA, TENMA, LOAI, DAM, BEO, DUONG, NANGLUONG) Ữ Ữ D D N V N V À À Ở Ở Qui định thuộc tính LOAI có 2 giá trị: Chính, phụ là một S S ràng buộc miền giá trị Ơ Ơ C TO C TO Ộ Ộ N C N C • Biểu diễn ngôn ngữ hình thức Ầ Ầ NG BU NG BU C PH C PH ∀ m ∈ MONAN, m.LOAI ∈ [‘Chính’, ‘Phụ’] À ∀ m ∈ MONAN, m.LOAI ∈ [‘Chính’, ‘Phụ’] À Ọ Ọ NH R • Bối cảnh: MONAN NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B MONAN + - +(LOAI) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN16 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (16)(16)
  17. Ràng buộc miền giá trị U U BÀI 2: QUẢN LÝ THỰC ĐƠN Ệ Ệ BÀI 2: QUẢN LÝ THỰC ĐƠN N N LI LI Ẹ Ẹ 6. NGAY_KQ (MATRE, NGAY, CO_MAT, DANHGIA) Ữ Ữ D D N V N V À À Ở Ở Qui định thuộc tính CO_MAT có 2 giá trị: 1 – có mặt, 0 - S S vắng là một ràng buộc miền giá trị Ơ Ơ C TO C TO Ộ Ộ N C N C • Biểu diễn ngôn ngữ hình thức Ầ Ầ NG BU NG BU C PH C PH ∀ n ∈ NGAY_KQ, n.CO_MAT ∈ [0, 1] À ∀ n ∈ NGAY_KQ, n.CO_MAT ∈ [0, 1] À Ọ Ọ NH R • Bối cảnh: NGAY_KQ NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B NGAY_KQ + - +(CO_MAT) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN17 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (17)(17)
  18. Ràng buộc miền giá trị U U BÀI 2: QUẢN LÝ THỰC ĐƠN Ệ Ệ BÀI 2: QUẢN LÝ THỰC ĐƠN N N LI LI Ẹ Ẹ 6. NGAY_KQ (MATRE, NGAY, CO_MAT, DANHGIA) Ữ Ữ D D N V N V À À Ở Ở Qui định thuộc tính DANHGIA có 3 giá trị: A, B, C là một S S ràng buộc miền giá trị Ơ Ơ C TO C TO Ộ Ộ N C N C • Biểu diễn ngôn ngữ hình thức Ầ Ầ NG BU NG BU C PH C PH ∀ n ∈ NGAY_KQ, n.DANHGIA ∈ [‘A’, ‘B’, ‘C’] À ∀ n ∈ NGAY_KQ, n.DANHGIA ∈ [‘A’, ‘B’, ‘C’] À Ọ Ọ NH R • Bối cảnh: NGAY_KQ NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B NGAY_KQ + - +(DANHGIA) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN18 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (18)(18)
  19. Ràng buộc miền giá trị U U BÀI 2: QUẢN LÝ THỰC ĐƠN Ệ Ệ BÀI 2: QUẢN LÝ THỰC ĐƠN N N LI LI Ẹ Ẹ 7. THANG_KQ (THANG, NAM, MATRE, CHIEUCAO, CANNANG, BONGSEN) Ữ Ữ D D N V N V À À Ở Ở Qui định thuộc tính BONGSEN có 2 giá trị: 1- có bông sen, S S 0 – không có bông sen là một ràng buộc miền giá trị Ơ Ơ C TO C TO Ộ Ộ N C N C • Biểu diễn ngôn ngữ hình thức Ầ Ầ NG BU NG BU C PH C PH ∀ t ∈ THANG_KQ, t.BONGSEN ∈ [0,1] À ∀ t ∈ THANG_KQ, t.BONGSEN ∈ [0,1] À Ọ Ọ NH R • Bối cảnh: THANG_KQ NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B THANG_KQ + - +(BONGSEN) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN19 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (19)(19)
  20. Ràng buộc liên bộ - 1 quan hệ U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ Ữ ‰ Ràng buộc liên bộ là điều kiện ràng buộc giữa Ữ D D N V N V các bộ trên cùng một quan hệ À À Ở Ở S S Ví dụ: thuộc tính TenNganh của mỗi dòng trong Ơ Ví dụ: thuộc tính TenNganh của mỗi dòng trong Ơ C TO C TO Ộ Ộ quan hệ Nganh có giá trị duy nhất N C N C Ầ Ầ MANGANH TENNGANH SOCD TSSV NG BU NG BU C PH C PH À À SP103 Sư Phạm Tin học 8 800 Ọ Ọ SP102 Sư Phạm Lý 4 1200 NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả CNTT Khoa học máy tính 8 160 C C Á Á I GI I GI X X SP104 Sư Phạm Lý 6 1000 À À B B Không hợp lệ, vì TENNGANH là duy nhất TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN20 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (20)(20)
  21. Ràng buộc liên bộ - 1 quan hệ U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ Ữ ‰ Ràng buộc liên bộ là điều kiện ràng buộc giữa Ữ D D N V N V các bộ trên cùng một quan hệ À À Ở Ở S S Ví dụ: thuộc tính TenNganh của mỗi dòng trong Ơ Ví dụ: thuộc tính TenNganh của mỗi dòng trong Ơ C TO C TO Ộ Ộ quan hệ Nganh có giá trị duy nhất N C N C Ầ Ầ NG BU NG BU • Cách xác định C PH C PH À À Ọ Ọ ‰ Tìm trong tân từ của mỗi quan hệ các thuộc NH R NH R Ị tính có qui định “là duy nhất” Ị NG H NG H Đ Đ Ả Ả C C ‰ Tìm trong tân từ của mỗi quan hệ các thuộc Á Á I GI I GI X X tính có qui định “về số lượng”, ví dụ 2, 3, n, À À B B liên quan đến hàm COUNT, SUM TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN21 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (21)(21)
  22. Ràng buộc liên bộ - 1 quan hệ U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 2. NGANH(MANGANH, TENNGANH, SOCD, TSSV) D D N V N V À À Ở Ở Tân từ: Mỗi ngành có một mã duy nhất (MANGANH), có một tên S S Ơ duy nhất (TENNGANH). SOCD là số lượng chuyên đề mà một Ơ C TO C TO Ộ Ộ sinh viên theo học ngành có mã ngành có MANGANH phải học. N C N C TSSV cho biết tổng số sinh viên đã từng theo học ngành này. Ầ Ầ NG BU NG BU Thuộc tính TENNGANH là duy nhất trong quan hệ NGANH C PH Thuộc tính TENNGANH là duy nhất trong quan hệ NGANH C PH À À Ọ Ọ là một ràng buộc liên bộ NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả • Biểu diễn ngôn ngữ hình thức C C Á Á I GI I GI X X À À B ∀n ,n ∈ NGANH B ∀n1,n2 ∈ NGANH nn1 ≠≠ nn2 ⇒⇒ nn1.TenNganh.TenNganh ≠≠ nn2.TenNganh.TenNganh TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN22 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (22)(22)
  23. Ràng buộc liên bộ - 1 quan hệ U U BÀI 1: QUẢN LÝ CHUYÊN ĐỀ Ệ Ệ BÀI 1: QUẢN LÝ CHUYÊN ĐỀ N N LI LI Ẹ Ẹ 2. NGANH(MANGANH, TENNGANH, SOCD, TSSV) Ữ Ữ D D N V N V À À Tân từ: Mỗi ngành có một mã duy nhất (MANGANH), có một tên Ở Ở duy nhất (TENNGANH). SOCD là số lượng chuyên đề mà một S S Ơ Ơ C TO C TO sinh viên theo học ngành có mã ngành có MANGANH phải học. Ộ Ộ TSSV cho biết tổng số sinh viên đã từng theo học ngành này. N C N C Ầ Ầ Thuộc tính TENNGANH là duy nhất trong quan hệ NGANH NG BU NG BU C PH C PH À À là một ràng buộc liên bộ Ọ Ọ NH R • Bối cảnh: NGANH NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À B B Quan hệ Thêm Xóa Sửa NGANH + - +(TENNGANH) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN23 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (23)(23)
  24. Ràng buộc liên bộ - 1 quan hệ U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ Ữ Ữ 3. CHUYENDE(MACD, TENCD, SOSVTD) D D N V N V À À Ở Ở Tân từ: Mỗi chuyên đề có một mã duy nhất (MACD), có một tên S S Ơ duy nhất (TENCD). SOSVTD cho biết số sinh viên tối đa có thể Ơ C TO C TO Ộ Ộ chấp nhận được mỗi khi có một lớp được mở cho chuyên đề có N C N C mã là MACD. Ầ Ầ NG BU NG BU Thuộc tính TENCD là duy nhất trong quan hệ CHUYENDE C PH Thuộc tính TENCD là duy nhất trong quan hệ CHUYENDE C PH À À Ọ Ọ là một ràng buộc liên bộ NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả • Biểu diễn ngôn ngữ hình thức C C Á Á I GI I GI X X À À B ∀cd ,cd ∈ CHUYENDE B ∀cd1,cd2 ∈ CHUYENDE cdcd1 ≠≠ cdcd2 ⇒⇒ cdcd1.TenCD.TenCD ≠≠ cdcd2.TenCD.TenCD TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN24 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (24)(24)
  25. Ràng buộc liên bộ - 1 quan hệ U U BÀI 1: QUẢN LÝ CHUYÊN ĐỀ Ệ Ệ BÀI 1: QUẢN LÝ CHUYÊN ĐỀ N N LI LI Ẹ Ẹ 3. CHUYENDE(MACD, TENCD, SOSVTD) Ữ Ữ D D N V N V À À Ở Tân từ: Mỗi chuyên đề có một mã duy nhất (MACD), có một tên Ở S S duy nhất (TENCD). SOSVTD cho biết số sinh viên tối đa có thể Ơ Ơ C TO C TO chấp nhận được mỗi khi có một lớp được mở cho chuyên đề có Ộ Ộ N C N C mã là MACD. Ầ Ầ Thuộc tính TENCD là duy nhất trong quan hệ CHUYENDE NG BU NG BU C PH C PH À À là một ràng buộc liên bộ Ọ Ọ NH R • Bối cảnh: CHUYENDE NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À B B Quan hệ Thêm Xóa Sửa CHUYENDE + - +(TENCD) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN25 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (25)(25)
  26. Ràng buộc liên bộ - 1 quan hệ U U Ệ Ệ BBÀÀII 1:1: QUQUẢẢNN LÝLÝ CHUYÊNCHUYÊN ĐĐỀỀ N N LI LI Ẹ Ẹ 4. CD_NGANH(MACD, MANGANH) Ữ Ữ D D N V N V À À Ở Tân từ: Mỗi chuyên đề có thể được học bởi nhiều ngành Ở S S (MANGANH), mỗi ngành có thể học nhiều chuyên đề (MACD). Ơ Ơ C TO C TO Mỗi ngành học tối đa là 8 chuyên đề Ộ Ộ N C N C Ầ Ầ Qui định mỗi ngành học tối đa 8 chuyên đề là một ràng buộc liên bộ NG BU buộc liên bộ NG BU C PH C PH À À Qui định số lượng bộ (COUNT) có cùng MANGANH trong Ọ Ọ quan hệ CD_NGANH không được vượt quá 8 NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả • Biểu diễn ngôn ngữ hình thức C C Á Á I GI I GI X X À À ∀∀cdncdn ∈∈ CD_NGANHCD_NGANH B B (TCOUNT(MACD) (σcdn. MANGANH = MANGANH (CD_NGANH))) ≤ 8 TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN26 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (26)(26)
  27. Ràng buộc liên bộ - 1 quan hệ U U BÀI 1: QUẢN LÝ CHUYÊN ĐỀ Ệ Ệ BÀI 1: QUẢN LÝ CHUYÊN ĐỀ N N LI LI Ẹ Ẹ 4. CD_NGANH(MACD, MANGANH) Ữ Ữ D D N V N V À À Tân từ: Mỗi chuyên đề có thể được học bởi nhiều ngành Ở Ở (MANGANH), mỗi ngành có thể học nhiều chuyên đề (MACD). S S Ơ Ơ C TO C TO Mỗi ngành học tối đa là 8 chuyên đề Ộ Ộ N C N C Qui định mỗi ngành học tối đa 8 chuyên đề là một ràng Ầ Ầ buộc liên bộ, qui định số lượng bộ (COUNT) có cùng MANGANH trong quan hệ CD_NGANH không được vượt NG BU MANGANH trong quan hệ CD_NGANH không được vượt NG BU C PH C PH À À quá 8 Ọ Ọ NH R • Bối cảnh: CD_NGANH NH R Ị Ị NG H NG H Đ Đ Ả Ả C C • Bảng tầm ảnh hưởng (TAH) Á Á I GI I GI X X À À B B Quan hệ Thêm Xóa Sửa CD_NGANH + - +(MACD,MANGANH) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN27 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (27)(27)
  28. Ràng buộc liên bộ - 1 quan hệ U U BÀI 1: QUẢN LÝ CHUYÊN ĐỀ Ệ Ệ BÀI 1: QUẢN LÝ CHUYÊN ĐỀ N N LI LI Ẹ Ẹ 6. DANGKY(MASV, MACD, NAM, HOCKY) Ữ Ữ D D N V N V Tân từ: Mỗi bộ của quan hệ DANGKY thể hiện việc một sinh viên À À Ở Ở (MASV) đăng ký học một chuyên đề (MACD) nào đó trong một S S Ơ học kỳ (HOCKY) của một năm học (NAM). Sinh viên chỉ được Ơ C TO C TO Ộ Ộ phép đăng ký tối đa 3 chuyên đề trong một học kỳ N C N C Ầ Ầ Qui định sinh viên chỉ được phép đăng ký tối đa 3 chuyên đề trong một học kỳ là một ràng buộc liên bộ. NG BU đề trong một học kỳ là một ràng buộc liên bộ. NG BU C PH C PH À À Qui định số lượng bộ có cùng MASV, NAM, HOCKY không Ọ Ọ được vượt quá 3 NH R NH R Ị Ị NG H NG H Đ Đ • Biểu diễn ngôn ngữ hình thức Ả Ả C C Á Á I GI ∀dk ∈ DANGKY I GI ∀dk ∈ DANGKY X X À À B B (TCOUNT(MACD) (σDK.MASV = MASV ∧ DK.NAM = NAM ∧ DK.HOCKY = HOCKY(DANGKY))) ≤ 3 TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN28 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (28)(28)
  29. Ràng buộc liên bộ - 1 quan hệ U U BÀI 1: QUẢN LÝ CHUYÊN ĐỀ Ệ Ệ BÀI 1: QUẢN LÝ CHUYÊN ĐỀ N N LI LI Ẹ Ẹ 6. DANGKY(MASV, MACD, NAM, HOCKY) Ữ Ữ D D N V N V Tân từ: Mỗi bộ của quan hệ DANGKY thể hiện việc một sinh viên À À Ở Ở (MASV) đăng ký học một chuyên đề (MACD) nào đó trong một S S Ơ học kỳ (HOCKY) của một năm học (NAM). Sinh viên chỉ được Ơ C TO C TO Ộ Ộ phép đăng ký tối đa 3 chuyên đề trong một học kỳ N C N C Ầ Ầ Qui định sinh viên chỉ được phép đăng ký tối đa 3 chuyên đề trong một học kỳ là một ràng buộc liên bộ. NG BU đề trong một học kỳ là một ràng buộc liên bộ. NG BU C PH C PH À À Ọ Ọ • Bối cảnh: DANGKY NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả • Bảng tầm ảnh hưởng (TAH) C C Á Á I GI I GI X X À À Quan hệ Thêm Xóa Sửa B B DANGKY + - +(MASV,NAM,HOCKY) TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN29 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (29)(29)
  30. Ràng buộc liên thuộc tính - 1 quan hệ U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ Ữ ‰ Ràng buộc liên thuộc tính là điều kiện ràng buộc Ữ D D N V N V giữa các thuộc tính trên cùng một quan hệ À À Ở Ở S S Ví dụ: thuộc tính NgayNH trong quan hệ Ơ Ví dụ: thuộc tính NgayNH trong quan hệ Ơ C TO C TO Ộ Ộ HocSinh phải có giá trị lớn hơn NgaySinh trong N C N C Ầ Ầ quan hệ HocSinh 6 năm NG BU NG BU C PH C PH À À Ọ Ọ MSHS TEN HOC SINH NGAYSINH NGAYNH HS01 Nguyễn Công Phú 12/12/1979 12/12/1982 NH R NH R Ị Ị NG H NG H Đ Đ HS02 Phan Anh Khanh 11/10/1979 12/12/2000 Ả Ả C C Á Á I GI I GI HS03 Phạm Khánh Như 12/1/1979 12/12/2000 X X À À B B HS04 Hàn Quốc Việt 2/2/1979 12/12/2000 TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN30 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (30)(30)
  31. Ràng buộc khóa ngoại U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ Ữ ‰ Ràng buộc khóa ngoại là điều kiện ràng buộc Ữ D D N V N V giữa giá trị khóa ngoại của quan hệ hệ này với À À Ở Ở S S giá trị khóa chính trong quan hệ khác Ơ Ơ C TO C TO Ộ Ộ Ví dụ: thuộc tính MaNganh trong quan hệ N C N C Ầ Ầ SinhVien phải tồn tại trong quan hệ Nganh NG BU NG BU C PH C PH À À Ọ Ọ ‰ Ràng buộc khóa ngoại còn được gọi là ràng buộc phụ thuộc tồn tại, sự tồn tại của giá trị NH R NH R Ị Ị NG H NG H Đ Đ thuộc tính khóa ngoại phụ thuộc vào sự tồn tại Ả Ả C C của giá trị thuộc tính khóa chính Á Á I GI I GI X X À À B B • Biểu diễn ngôn ngữ hình thức SINHVIEN[MANGANH] ⊆ NGANH[MANGANH] TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN31 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (31)(31)
  32. Ràng buộc liên bộ -nhiều quan hệ U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ ‰ Ràng buộc liên bộ là điều kiện ràng buộc giữa Ữ Ữ D D N V N V các bộ trên quan hệ hệ này với một hay nhiều À À Ở Ở bộ trên quan hệ khác S S Ơ Ơ C TO C TO Ộ Ộ Ví dụ: tổng số sinh viên đăng ký (DANGKY) học 1 N C N C Ầ Ầ chuyên đề phải ít hơn số lượng sinh viên tối đa NG BU NG BU được qui định bởi chuyên đề đó (CHUYENDE) C PH C PH À À Ọ Ọ • Biểu diễn ngôn ngữ hình thức NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả Tương tự ràng buộc liên bộ trên 1 quan hệ C C Á Á I GI I GI X X À À • Bối cảnh B B Danh sách các quan hệ có liên quan đến ràng buộc này TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN32 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (32)(32)
  33. Ràng buộc liên thuộc tính - nhiều quan hệ U U Ệ Ệ • Định nghĩa N N LI LI Ẹ Ẹ Ữ ‰ Ràng buộc liên thuộc tính là điều kiện ràng buộc Ữ D D N V N V giữa các thuộc tính của nhiều quan hệ À À Ở Ở S S Ví dụ: thuộc tính NgayNhap trong quan hệ Ơ Ví dụ: thuộc tính NgayNhap trong quan hệ Ơ C TO C TO Ộ Ộ PhieuNhap phải có giá trị lớn hơn NgayXuat N C N C Ầ Ầ trong quan hệ PhieuXuat NG BU NG BU C PH C PH À À Ọ Ọ • Biểu diễn ngôn ngữ hình thức NH R NH R Ị Ị NG H NG H Tương tự ràng buộc liên thuộc tính trên 1 quan hệ Đ Đ Ả Ả C C Á Á I GI I GI X X • Bối cảnh À À B B Danh sách các quan hệ có liên quan đến ràng buộc này TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN33 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (33)(33)
  34. U U Ệ Ệ N N LI LI Ẹ Ẹ Ữ Ữ D D N V N V À À Ở Ở S S Ơ Ơ C TO C TO Ộ Ộ N C N C Ầ Ầ NG BU NG BU C PH C PH À À Ọ Ọ NH R NH R Ị Ị NG H NG H Đ Đ Ả Ả C C Á Á I GI I GI X X À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO ”” KHOAKHOA TOTOÁNÁN TINTIN34 HHỌỌCC ”” ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM ”” (34)(34)