Csdl

976 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
976
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
78
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Csdl

  1. 1. Bối cảnh nhiều quan hệ Chương 5. Ràng buộc toàn vẹn
  2. 2. Nội dung <ul><li>Tham chiếu </li></ul><ul><li>Liên bộ -liên quan hệ </li></ul><ul><li>Liên thuộc tính –liên quan hệ </li></ul><ul><li>Thuộc tính tổng hợp </li></ul><ul><li>Chu trình </li></ul>
  3. 3. RBTV- Tham chiếu <ul><li>KN :RBTV tham chiếu còn gọi là ràng buộc phụ thuộc tồn tại hay ràng buộc khóa ngoại. </li></ul><ul><li>Giá trị xuất hiện tại các thuộc tính trong một quan hệ nào đó phải tham chiếu đến giá trị khóa chính của một quan hệ khác cho trước </li></ul>
  4. 4. <ul><li>Ví dụ : </li></ul><ul><li>Xét lược đồ quan hệ: </li></ul><ul><li>PHONGBAN ( MAPH , TENPH, TRPH, NGNC) </li></ul><ul><li>NHANVIEN ( MANV , HOTEN, NTNS, PHAI, MA_NQL, MAPH, LUONG) </li></ul><ul><li>1. Câu hỏi: Mỗi trưởng phòng phải là một nhân viên trong công ty. </li></ul><ul><li>Bối cảnh: NHANVIEN, PHONGBAN </li></ul>RBTV- Tham chiếu
  5. 5. <ul><ul><ul><ul><li>Biểu diển: </li></ul></ul></ul></ul><ul><ul><ul><ul><li> p  PHONGBAN,  n  NHANVIEN: </li></ul></ul></ul></ul><ul><ul><ul><ul><li>p.TRPH= n.MANV </li></ul></ul></ul></ul><ul><li>Bảng tầm ảnh hưởng: </li></ul>RBTV- Tham chiếu Thêm Xóa Sửa PHONGBAN + (TRPH ) - + (TRPH ) NHANVIEN - + - (*)
  6. 6. <ul><li>Ví dụ : </li></ul><ul><li>câu hỏi: Mọi thân nhân phải có mối quan hệ gia đình với một nhân viên trong công ty . </li></ul><ul><li>Bối cảnh: THANNHAN, NHANVIEN </li></ul><ul><li>Biểu diễn: </li></ul><ul><li>∀ t ∈ THANNHAN ( ∃s ∈ NHANVIEN ( s.MANV = t.MA_NVIEN )) </li></ul>RBTV- Tham chiếu
  7. 7. RBTV- Tham chiếu <ul><li>Bảng tầm ảnh hưởng: </li></ul>Thêm Xóa Sửa NHANVIEN - + + (MANV ) THANNHAN + - + (MA_NVIEN)
  8. 8. RBTV-Liên bộ-Liên quan hệ <ul><li>KN : RBTV liên bộ, liên quan hệ là điều kiện giữa các bộ trên nhiều quan hệ khác nhau. </li></ul><ul><li>Ví dụ : </li></ul><ul><li>Xét lược đồ quan hệ: </li></ul><ul><li>HOADON(SOHD, MAKH, NGAYHD) CTHD(SOHD, MAHH, DGIA, SLG) </li></ul><ul><li>Câu hỏi: Mỗi hóa đơn phải có ít nhất một chi tiết hóa đơn . </li></ul>
  9. 9. RBTV-Liên bộ-Liên quan hệ <ul><li> Bối cảnh: HOADON, CTHD </li></ul><ul><li>Biểu diển: </li></ul><ul><li>∀ t ∈ HOADON ( ∃s ∈ CTHD ( t.SOHD = s.SOHD )) </li></ul><ul><li>Bảng tầm ảnh hưởng: </li></ul>Thêm Xóa Sửa HOADON + + + (SOHD) CTHD + + + ( SOHD)
  10. 10. RBTV-Liên thuộc tính-liên quan hệ <ul><li>KN : Là ràng buộc xãy ra giữa các thuộc tính trên nhiều quan hệ khác nhau </li></ul><ul><li>Ví dụ : </li></ul><ul><li> Câu hỏi: ngày nhận chức của trưởng phòng phải lớn hơn ngày sinh. </li></ul><ul><li>Bối cảnh: NHANVIEN, PHONGBAN </li></ul>
  11. 11. RBTV-Liên thuộc tính-liên quan hệ <ul><li>Biểu diển: </li></ul><ul><li>∀ t ∈ PHONGBAN ( ∃s ∈ NHANVIEN ( s.MANV = t.TRPHG ∧t.NG_NHANCHUC > s.NGSINH )) </li></ul><ul><li>Bảng tầm ảnh hưởng: </li></ul>Thêm Xóa Sửa NHANVIEN - - + ( NGSINH,MANV ) PHONGBAN + - + ( NG_NHANCHUC,TRPHG )
  12. 12. RBTV-Liên thuộc tính-liên quan hệ <ul><li>Ví dụ : </li></ul><ul><li>Xét các lược đồ quan hệ: </li></ul><ul><ul><li>DATHANG( MADH , MAKH, NGAYDH) </li></ul></ul><ul><ul><li>GIAOHANG( MAGH , MADH, NGAYGH) </li></ul></ul><ul><ul><li> </li></ul></ul><ul><ul><li>Câu hỏi: Ngày giao hàng không được trước ngày đặt hàng. </li></ul></ul><ul><ul><li>Bối cảnh : DATHANG, GIAOHANG </li></ul></ul>
  13. 13. <ul><li>B iểu diển: </li></ul><ul><ul><ul><li> g  GIAO_HANG,  d  DAT_HANG:d.MADH  g.MADH  d.NGAYDH >= g.NGAYGH </li></ul></ul></ul><ul><ul><ul><li>Bảng tầm ảnh hưởng: </li></ul></ul></ul>RBTV-Liên thuộc tính-liên quan hệ R Thêm Xóa Sửa DATHANG - - + (ngaydh) GIAOHANG +(ngaygh) - + (ngaygh)
  14. 14. RBTV-Thuộc tính tổng hợp <ul><li>KN : Là thuộc tính có giá trị được tính toán từ các thuộc tính khác . </li></ul><ul><li>Khi CSDL có thuộc tính tổng hợp : RBTV bảo đảm quan hệ giữa thuộc tính tổng hợp và các thuộc tính nguồn . </li></ul><ul><li>Ví dụ : </li></ul><ul><li> Xét các lược đồ quan hệ: PHONGBAN(TENPHG, MAPHG, TRPHG, </li></ul><ul><li>NG_NHANCHUC, SO_NV) </li></ul>
  15. 15. RBTV-Thuộc tính tổng hợp <ul><li>Câu hỏi: Số nhân viên của một phòng ban phải bằng tổng số lượng nhân viên thuộc phòng đó . </li></ul><ul><li>Bối cảnh: NHANVIEN, PHONGBAN </li></ul><ul><li>Biểu diển: </li></ul><ul><li>∀ t ∈ PHONGBAN ( t.SO_NV = card { s ∈ NHANVIEN | s.PHG = t.MAPHG} </li></ul>
  16. 16. RBTV-Thuộc tính tổng hợp <ul><li>Bảng tầm ảnh hưởng: </li></ul>Thêm Xóa Sửa NHANVIEN + + + ( PHG ) PHONGBAN - - + ( SO_NV, MAPHG )
  17. 17. RBTV-Chu trình <ul><li>KN : Lược đồ CSDL có thể được biểu diễn bằng đồ thị . </li></ul><ul><li>Đỉnh: </li></ul><ul><li>Quan hệ </li></ul><ul><li>Thuộc tính tên thuộc tính </li></ul><ul><li>Cạnh: </li></ul><ul><li>Đường nối một đỉnh quan hệ với một đỉnh thuộc tính trong lược đồ CSDL </li></ul><ul><li>tên thuộc tính </li></ul>Tên quan hê Tên quan hê
  18. 18. RBTV-Chu trình <ul><li>Chu trình: </li></ul><ul><li> Lược đ ồ CSDL có chu trình là đ ồ thị xuất hiện đường đi khép kín . </li></ul><ul><li>Ví dụ : </li></ul><ul><li> Câu hỏi: Nhân viên chỉ được phân công vào các đề án do phòng ban của mình phụ trách . </li></ul><ul><li> </li></ul><ul><li>Bối cảnh: NHANVIEN, DEAN, PHANCONG </li></ul>
  19. 19. RBTV-Chu trình <ul><li>Biểu diển: </li></ul><ul><li>NVDA ← NHANVIEN PHG=PHONG DEAN </li></ul><ul><li>∀ t ∈ PHANCONG ( ∃s ∈ NVDA </li></ul><ul><ul><li>(t.MA_NVIEN = s.MANV ∧ t.MADA = s.SODA )) </li></ul></ul><ul><ul><li>Bảng tầm ảnh hưởng: </li></ul></ul>Thêm Xóa Sửa NHANVIEN - - + ( MANV,PHG ) DEAN - - + ( MADA,PHG ) PHANCONG + - +( MA_NVIEN,SODA)

×