1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng cơ sở dữ liệu chương 6 phép tính quan hệ

42 364 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Chương Phép tính quan hệ Nội dung chi tiết  Giới thiệu  Phép tính quan hệ  Phép tính quan hệ miền Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Giới thiệu Maths Database Algebra 1970 1972 Logic Geometry … … … 1981 YOU Relational Algebra Relational Calculus Codd ACM Turing Award 2??? ??? ??? Award 2??? Other fields Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Giới thiệu (tt)  Là ngôn ngữ truy vấn hình thức  Do Codd đề nghị vào năm 1972, “Data Base Systems”, Prentice Hall, p33-98  Đặc điểm - Phi thủ tục Dựa vào lý thuyết logic Rút trích (what)  rút trích (how) Khả diễn đạt tương đương với ĐSQH Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Giới thiệu (tt)  Có loại - Phép tính quan hệ (Tuple Rational Calculus)  SQL - Phép tính quan hệ miền (Domain Rational Calculus)  QBE (Query By Example) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Nội dung chi tiết  Giới thiệu  Phép tính quan hệ  Phép tính quan hệ miền Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Phép tính quan hệ  Biểu thức phép tính quan hệ có dạng { t.A | P(t) } - t biến  Biến nhận giá trị quan hệ CSDL  t.A giá trị t thuộc tính A - P công thức có liên quan đến t  P(t) có giá trị ĐÚNG SAI phụ thuộc vào t - Kết trả tập t cho P(t) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Ví dụ  Tìm nhân viên có lương 30000 { t | t  NHANVIEN  t.LUONG > 30000 } P(t) P(t) - t  NHANVIEN  Nếu t thể quan hệ NHANVIEN - t.LUONG > 30000  Nếu thuộc tính LUONG t có giá trị 30000 Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Ví dụ  Cho biết mã tên nhân viên có lương 30000 - Tìm t thuộc NHANVIEN có thuộc tính lương lớn 30000 - Lấy giá trị thuộc tính MANV TENNV { t.MANV, t.TENNV | t  NHANVIEN  t.LUONG > 30000 } - Tập MANV TENNV t cho t thể NHANVIEN t có giá trị lớn 30000 thuộc tính LUONG Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Ví dụ  Cho biết nhân viên (MANV) làm việc phòng ‘Nghien cuu’ t.MANV | t  NHANVIEN s  PHONGBAN  s.TENPHG  ‘Nghien cuu’ - Lấy t thuộc NHANVIEN - So sánh t với s để tìm nhân viên làm việc phòng ‘Nghien cuu’ - Cấu trúc “tồn tại” phép toán logic t  R (Q(t)) Tồn t thuộc quan hệ R cho vị từ Q(t) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 10 Một số biến đổi  (i) P1  P2 =  (P1  P2)  (ii) tR (P(t)) = tR (P(t))  (iii) tR (P(t)) = tR (P(t))  (iv) P  Q = P  Q Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 28 Công thức an toàn  Xét công thức { t | (t  NHANVIEN) } - Có nhiều t không thuộc quan hệ NHANVIEN - Thậm chí CSDL - Kết trả không xác định  Một công thức P gọi an toàn giá trị kết lấy từ miền giá trị P - Dom(P) - Tập giá trị đề cập P Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 29 Công thức an toàn (tt)  Ví dụ { t | t  NHANVIEN  t.LUONG > 30000 } - Dom(t  NHANVIEN  t.LUONG > 30000) - Là tập giá trị  Có giá trị 30000 thuộc tính LUONG  Và giá trị khác thuộc tính lại - Công thức an toàn Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 30 Nội dung chi tiết  Giới thiệu  Phép tính quan hệ  Phép tính quan hệ miền Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 31 Phép tính quan hệ miền  Biểu thức phép tính quan hệ miền có dạng { x1, x2, …, xn | P(x1, x2, …, xn) } - x1, x2, …, xn biến miền  Biến nhận giá trị miền giá trị thuộc tính - P công thức theo x1, x2, …, xn  P hình thành từ công thức nguyên tố - Kết trả tập giá trị x1, x2, …, xn cho giá trị thay cho xi P Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 32 Ví dụ  Cho biết mã tên nhân viên có lương 30000 { r, s | x (  NHANVIEN  x > 30000 ) } Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 33 Ví dụ  Cho biết nhân viên (MANV) làm việc phòng ‘Nghien cuu’ { s | z (  NHANVIEN  a, b (  PHONGBAN  a = ‘Nghien cuu’  b = z )) } Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 34 Ví dụ 10  Cho biết nhân viên (MANV, HONV, TENNV) thân nhân { p, r, s | s (  NHANVIEN  a (  THANNHAN  a = s )) } Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 35 Công thức nguyên tố  (i)  R - xi biến miền - R quan hệ có n thuộc tính  (ii) xy - x, y biến miền - Miền giá trị x y phải giống -  phép so sánh  ,  ,  ,  ,  ,   (iii) xc - c số - x biến miền -  phép so sánh  ,  ,  ,  ,  ,  Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 36 Nhận xét  Một công thức nguyên tố mang giá trị ĐÚNG SAI với tập giá trị cụ thể tương ứng với biến miền - Gọi chân trị công thức nguyên tố  Một số qui tắc biến đổi tương tự với phép tính quan hệ Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 37 Công thức an toàn  Xét công thức { p, r, s |  (  NHANVIEN) } - Các giá trị kết trả không thuộc miền giá trị biểu thức - Công thức không an toàn Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 38 Công thức an toàn (tt)  Xét công thức { x | y (  R)  z (  R  P(x, z)) } Công thức - Công thức R quan hệ có tập giá trị hữu hạn Cũng có tập hữu hạn giá trị không thuộc R Công thức 1: xem xét giá trị R Công thức 2: kiểm tra tập giá trị hữu hạn z Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 39 Công thức an toàn (tt)  Biểu thức { x1, x2, …, xn | P(x1, x2, …, xn) } gọi an toàn nếu: - Những giá trị xuất biểu thức phải thuộc miền giá trị P - Vị từ : biểu thức x (Q(x)) xác định giá trị x thuộc dom(Q) làm cho Q(x) - Vị từ : biểu thức x (Q(x)) Q(x) với giá trị x thuộc dom(Q) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 40 Bài tập nhà  Bài tập - Làm lại tập chương (ĐSQH)  Trừ câu có hàm kết hợp gom nhóm - Biểu diễn ngôn ngữ  Phép tính quan hệ có biến  Phép tính quan hệ có biến miền  Đọc - Ngôn ngữ QBE Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 41 Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 42 [...]... trong đó  Có giá trị trên 30000 tại thuộc tính LUONG  Và các giá trị khác tại những thuộc tính còn lại - Công thức trên là an toàn Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 30 Nội dung chi tiết  Giới thiệu  Phép tính quan hệ trên bộ  Phép tính quan hệ trên miền Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 31 Phép tính quan hệ trên miền  Biểu thức phép tính quan hệ trên miền có dạng { x1, x2, …, xn |... Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM Biến kết buộc 21 Công thức nguyên tố  (i) tR - t là biến bộ - R là quan hệ t  NHANVIEN  (ii) t.A  s.B t.MANV = s.MANV - A là thuộc tính của biến bộ t - B là thuộc tính của biến bộ s -  là các phép so sánh  ,  ,  ,  ,  ,   (iii) t.A  c - c là hằng số s.LUONG > 30000 - A là thuộc tính của biến bộ t -  là các phép so sánh  ,  ,  ,  ,  ,  Cơ. .. s.DDIEM_DA  ‘TP HCM’  u  PHONGBAN (s.PHONG  u.MAPHG  u.TRPHG  t.MANV) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 15 Ví dụ 8  Tìm các nhân viên (MA_NVIEN) tham gia vào tất cả các đề án - Cấu trúc “với mọi” của phép toán logic t  R (Q(t)) Q đúng với mọi bộ t thuộc quan hệ R Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 16 Ví dụ 8 (tt)  Tìm các nhân viên (MANV, HONV, TENNV) tham gia vào tất cả các... cuu’  b = z )) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 34 Ví dụ 10  Cho biết các nhân viên (MANV, HONV, TENNV) không có thân nhân nào { p, r, s | s (  NHANVIEN  a (  THANNHAN  a = s )) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 35 Công thức nguyên tố  (i)  R - xi là biến miền - R là quan hệ có n thuộc tính  (ii) xy - x,... (iv) P  Q = P  Q Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 28 Công thức an toàn  Xét công thức { t | (t  NHANVIEN) } - Có rất nhiều bộ t không thuộc quan hệ NHANVIEN - Thậm chí không có trong CSDL - Kết quả trả về không xác định  Một công thức P gọi là an toàn nếu các giá trị trong kết quả đều lấy từ miền giá trị của P - Dom(P) - Tập các giá trị được đề cập trong P Cơ sở dữ liệu - Khoa CNTT -... t.TENNV | t  NHANVIEN  s  DEAN ( u  PHANCONG ( u.SODA  s.MADA  t.MANV  u.MA_NVIEN )) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 17 Ví dụ 9  Tìm các nhân viên (MANV, HONV, TENNV) tham gia vào tất cả các đề án do phòng số 4 phụ trách - Cấu trúc “kéo theo” của phép tính logic PQ Nếu P thì Q Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 18 Ví dụ 9 (tt)  Tìm các nhân viên (MANV, HONV, TENNV) tham... ĐÚNG  Chân trị SAI khi P(t) SAI với mọi bộ t trong R Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 26 Qui tắc (tt)  (5) Nếu P là công thức nguyên tố thì - Các biến bộ t trong P là biến tự do  (6) Công thức P=P1P2 , P=P1P2 , P=P1P2 - Sự xuất hiện của biến t trong P là tự do hay kết buộc phụ thuộc vào việc nó là tự do hay kết buộc trong P1, P2 Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 27 Một số biến đổi... u.SODA  s.MADA  t.MANV  u.MA_NVIEN ))) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 19 Định nghĩa hình thức  Một công thức truy vấn tổng quát có dạng { t1.Ai, t2.Aj, …tn.Ak | P(t1, t2, …, tn) } - t1, t2, …, tn là các biến bộ - Ai, Aj, …, Ak là các thuộc tính trong các bộ t tương ứng - P là công thức  P được hình thành từ những công thức nguyên tố Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 20 Biến bộ... một thuộc tính - P là công thức theo x1, x2, …, xn  P được hình thành từ những công thức nguyên tố - Kết quả trả về là tập các giá trị x1, x2, …, xn sao cho khi các giá trị được thay thế cho các xi thì P đúng Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 32 Ví dụ 3  Cho biết mã và tên nhân viên có lương trên 30000 { r, s | x (  NHANVIEN  x > 30000 ) } Cơ sở dữ liệu - Khoa... s  PHANCONG (t.MANV  s.MA_NVIEN)  u  THANNHAN (t.MANV  u.MA_NVIEN)) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 13 Ví dụ 6  Cho biết tên các nhân viên (TENNV) tham gia làm đề án mà không có thân nhân nào { t.TENNV | t  NHANVIEN  s  PHANCONG (t.MANV  s.MA_NVIEN)   u  THANNHAN (t.MANV  u.MA_NVIEN) } Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 14 Ví dụ 7  Với mỗi đề án ở ‘TP HCM’ cho biết ... Example) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Nội dung chi tiết  Giới thiệu  Phép tính quan hệ  Phép tính quan hệ miền Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM Phép tính quan hệ  Biểu thức phép tính. .. thuộc tính LUONG  Và giá trị khác thuộc tính lại - Công thức an toàn Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 30 Nội dung chi tiết  Giới thiệu  Phép tính quan hệ  Phép tính quan hệ miền Cơ sở liệu. .. dom(Q) Cơ sở liệu - Khoa CNTT - ĐH KHTN TPHCM 40 Bài tập nhà  Bài tập - Làm lại tập chương (ĐSQH)  Trừ câu có hàm kết hợp gom nhóm - Biểu diễn ngôn ngữ  Phép tính quan hệ có biến  Phép tính quan

Ngày đăng: 01/04/2016, 08:31

TỪ KHÓA LIÊN QUAN