Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 109 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
109
Dung lượng
894,51 KB
Nội dung
C sở Cơ liệu liệ Văn-Giang Nguyễn ễ Bộ môn Hệ thống ố thông tin, Khoa Công nghệ thông tin, Học viện Kỹ thuật quân E il giangnv@mta.edu.vn Email: i @ t d Slides courtesy of : Đỗ Thị Mai Hường, HTTT, CNTT, HVKTQS Nội dung môn học Chương 1: Tổng quan sở liệu (5) Chương 2: Mơ hình liên kết thực thể (5) Chương 3: Mơ hình liệu quan hệ (10) Chương 4: Phụ thuộc hàm dạng chuẩn CSDL (15 Chương Ch Hệ quản 5: ả trị t ị SQL Server S (10) Chương 6: Ngôn ngữ truy vấn CSDL (15) Chương 7: Lập trình T-SQL (15) -2- Nội dung Giới hạn ER Sự dư thừa Phụ thuộc hàm Hệ suy diễn Amstrong ậ tốn tìm bao đóng g Thuật Thuật tốn tìm khóa Các dạng chuẩn Chuẩn hóa quan hệ Tách kết nối không thông tin -3- Giới hạn lược đồ ER Cung cấp tập hướng dẫn không đưa tới lược đồ CSDL Không đưa cách đánh giá lược đồ khác Lý thuyết chuẩn hóa CSDL quan hệ cung cấp kỹ thuật để phân tích chuyển hóa từ lược đồ ER sang lược đồ quan hệ -4- Sự dư thừa Sự phụ thuộc thuộc tính gây dư thừa Ví dụ: Điểm môn học Điểm TB Xếp loại TENPHG MAPHG TRPHG NG_NHAMCHUC MANV TENNV HONV Nghiên cứu 123456789 01/02/2012 123456789 Tùng Nguyễn Điều hành 333444555 01/01/2010 333444555 Hưng Nguyễn Quản lý 999888777 01/06/2012 999888777 Vĩnh Phạm -5- Sự dư thừa Thuộc tính đa trị lược đồ ER Nhiều số liệu lược đồ quan hệ Ví dụ NHANVIEN(TENNV, ( HONV, NS, DCHI, GT, LUONG, BANGCAP) TENNV HONV NS DIACHI GT LUONG BANGCAP Tùng Nguyễn 12/08/1955 638 HQV CG Nam 6000 Trung cấp Chuyên Bùi 07/04/1970 255 XT CG Nữ 5500 Đại học Dũng Hoàng 09/05/1965 51 NTH BĐ Nam 6000 Cao đẳng Dũng Hoàng 09/05/1965 51 NTH BĐ Nam 6000 Đại học -6- Sự dư thừa Dư thừa Dị thường - Thao tác sửa đổi: cập nhật tất giá trị liên quan liê - Thao tác xóa: người cuối đơn vị thông tin đơn vị - Thao tác chèn TENPHG MAPHG TRPHG NG_NHAMCHUC MANV TENNV HONV Nghiên cứu 123456789 01/02/2012 123456789 Tùng Nguyễn Điều hành 333444555 01/01/2010 333444555 Hưng Nguyễn Quản lý 999888777 01/06/2012 999888777 Vĩnh Phạm -7- Sự dư thừa Các giá trị khơng xác định - Đặt thuộc tính trưởng phịng vào quan hệ NHANVIEN thay th vìì vào quan hệ PHONGBAN Các giả - Sử dụng phép nối -8- Sự dư thừa – Một số nguyên tắc (Lý cần có phụ thuộc hàm) NT1: Rõ ràng mặt ngữ nghĩa, tránh phụ thuộc thuộc tính với NT2 Tránh NT2: T h trùng t ù lặp lặ ề nội ội dung d đảm đả bảo bả tránh dị thường thao tác cập nhật liệu - Phải có số thao tác thêm cập nhật vào lược đồ quan hệ, gây sai hỏng trường hợp xóa bỏ NT3: Tránh đặt thuộc tính có nhiều giá trị null NT4: Thiết kế lược đồ quan hệ cho chúng ể nối ố với điều ề kiện ằ thuộc tính khóa khóa ngồi theo cách đảm bảo không sinh giả giả - Gây lỗi thực phép kết nối -9- Phụ thuộc hàm Lý thuyết chuẩn hóa - Các phân tích để đưa lược đồ thực thể liên kết cần ầ phải hải đ sửa chữa hữ bước b tiếp tiế theo - Vấn đề nêu slide giải có phương pháp phân tích tích hợp Lý thuyết chuẩn hóa (dựa phụ thuộc hà ) hàm) ẽ ề tảng tả sở để thực th hiệ việc iệ phân tích chuẩn hóa lược đồ ER - 10 - Ví dụ tách (khơng) tổn thất thơng tin Cho R={X,Y,Z} tập thuộc tính Giả sử quan hệ gốc R quan hệ tách sau Ta thấy R ⊆ R1 R2 - 95 - Ví dụ tách (không) tổn thất thông tin Cho R={X,Y,Z} R {X Y Z} tập thuộc th ộc tính Giả sử quan hệ gốc R quan hệ tách sau Ta thấy R = R1 R2 Nếu phép tách khơng có tính chất nối khơng mát thơng tin nhận phụ thêm (các giả) sau áp dụng phép chiếu nối tự nhiên Nghĩa từ mát mát thông tin nhiên giá trị Vì với tính chất ta - 96 nên gọi xác tính chất nối khơng phụ thêm Kiểm tra tính tách kết nối Thuật toán Chase Input: Sơ đồ quan hệ R = {A1,A2,…,Ak} l lược đồ quan hệ hệ F tập tậ PTH; PTH phép tách tá h p={R1,R2,…,Rk} Output: Khẳng định phép tách kết nối khơng thơng tin khơng? Thuật tốn: Xây dựng bảng ả Xây dựng bảng gồm n cột m hàng, cột j tương ứng với thuộc tính Aj, hàng i tương ứng với Ri Ở vị trí hàng i cột j, ta ký hiệu aj Aj thuộc Ri, ngược lại ta ký hiệu bij Ta có bảng T sau: - 97 - Kiểm tra tính tách kết nối - 98 - Kiểm tra tính tách kết nối Bước lặp: Áp dụng PTH F cho bảng vừa xây dựng Xét nhiều hiề lần lầ ỗi PTH XY thuộc th ộ F cho h đến đế không xét Với PTH XY mà bảng có giá trị giống tập X ta cho chúng tập Y với lưu ý ký hiệu aj chọn aj, ngược lại làm bằ chúng hú bằ ột t ký hiêu hiê bij Thuật tốn dừng bảng có dịng tốn ký tự a khơng xét Kết luận: Nếu có dịng tồn a phép tách kết nối khơng thơng tin Ngược lại phép tách có thơng tin - 99 - Ví dụ R= {A,B,C,D,E,F}; R1={A,B,D,E}; R2={A,C,D,F}; R3={B,C,E,F}; F={AB,FE} Bước 1: Lập bảng B ớc 2: Bước Áp dụng d ng AB, AB suy s b22=a a2 - 100 - Ví dụ Bước 3: Áp dụng FE, suy b25=a5 Phép tách không làm ấ thơng tin - 101 - Ví dụ F= {AB, CD, DEG} R1={A,B,C,D}, R2={D,E,G} DEG: b15=a5, b16=a6; dòng đầu chứa tồn Phép tách khơng thơng tin - 102 - Ví dụ Cho lược đồ quan hệ R = {A,B,C,D,E} Tách Tá h R thành h lược l đồ sau R1 = AD R2 = AB R3 = BE R4 = CDE R5 = AE Tập PTH F = {AC, BC, CD, DEC, CEA} Xác định phép tách có thơng tin hay khơng? - 103 - Lập bảng F = {AC, BC, CD, DEC, CEA} A B C D E AD a1 b12 b13 a4 b15 AB a1 a2 b23(b13) b24(a4) b25 BE b31(a1) a2 b33(b13)(a3 ) b34(a4) a5 CDE b41 b42 a3 a4 a5 AE a1 b52 b53(b13)(a3 ) b54(a4) a5 dịng chứa tồn Phép tách không thông tin - 104 - Tách quan hệ thành quan hệ BCNF với tính chất nối khơng thơng tin Input: Lược đồ quan hệ R tập PTH F thuộc tính R Đặt D = {R} Khi có LĐQH Q D khơng phải BCNF, BCNF thực vòng lặp: Với LDQH Q D khơng BCNF tìm ột PTH XY t Q vii phạm h BCNF thay th Q D hai lược đồ quan hệ (Q-Y) (XUY) Quá trình lặp dừng khơng cịn quan hệ D vi phạm BCNF Mỗi lần vào vòng lặp thuật tốn trên, tách quan hệ Q khơng phải BCNF thành hai lược đồ quan hệ Kết thúc thuật toán, tất quan hệ D BCNF - 105 - Tách quan hệ thành quan hệ BCNF với tính chất nối khơng thơng tin Trong bước thuật toán trên, cần xác định xem LĐQH Q có BCNF hay khơng Một phương pháp để làm điều kiểm tra Với PTH XY Q, Q ta tính X+ Nếu X+khơng chứa tất thuộc tính Q XY vi phạm BCNF X khơng g phải siêu khóa - 106 - Ví dụ Xét LĐQH R = {A, B, C, D, E, F} Với PTH ABCDEF, BCADEF, BF, DE, DB L Lược đồ quan hệ có ó khóa khó A BC Ta có BF vi phạm BCNF B+>