Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 131 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
131
Dung lượng
2,79 MB
Nội dung
BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔN TRƯỜNG CAO ĐẲNG CƠ GIỚI GIÁO TRÌNH MƠ ĐUN: CƠ SỞ DỮ LIỆU NGHỀ: KTSC LRMT TRÌNH ĐỘ: TRUNG CẤP Ban hành kèm theo Quyết định số: / QĐ-CĐCG ngày … tháng năm…… Trường cao đẳng Cơ giới Quảng Ngãi, năm 2022 (Lưu hành nội bộ) TUYÊN BỐ BẢN QUYỀN Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin phép dùng ngun trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI MỞ ĐẦU Giáo trình sở liệu biên soạn theo chương trình đào tạo chuyên ngành “Kỹ Thuật Sửa Chữa Lắp Ráp Máy” Tính Giáo trình trình bày vấn đề cốt lõi môn sở liệu Các học trình bày ngắn gọn, có nhiều ví dụ minh hoạ Cuối chương có tập để sinh viên luyện tập.Cuối giáo trình cịn có số đề thi năm gần Giáo trình giúp sinh viên việc học môn sở liệu bậc trung cấp Chúng mong sinh viên tự tìm hiểu trước vấn đề kết hợp với giảng lớp giáo viên để việc học mơn đạt hiệu Trong q trình giảng dạy biên soạn giáo trình này, chúng tơi nhận động viên thầy Ban Giám Hiệu nhà trường ý kiến đồng nghiệp khoa Chúng xin chân thành cảm ơn hy vọng giáo trình giúp cho việc dạy học môn sở liệu trường ngày tốt Quảng Ngãi, ngày tháng năm 20 Tham gia biên soạn Đoàn Ngọc Nghĩa Chủ biên ………… ……… … MỤC LỤC BÀI 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU 11 1.1 MỘT SỐ KHÁI NIỆM CƠ BẢN .11 1.1.1 Định nghĩa Cơ Sở Dữ Liệu (Data Base) 11 1.1.2 Ưu điểm sở liệu 12 1.1.3 Những vấn đề mà CSDL cần phải giải 12 1.1.4 Các đối tượng sử dụng CSDL 12 1.1.5 Hệ Quản Trị Cơ Sở Dữ Liệu (Data Base Management System) 13 1.1.6 Các Ứng Dụng Của Cơ Sở Dữ Liệu 13 1.2 CÁC MƠ HÌNH DỮ LIỆU 15 1.3 MƠ HÌNH THỰC THỂ KẾT HỢP 24 1.3.1 Thực Thể (entity) 24 1.3.2 Thuộc tính (attribute) 24 1.3.3 Loại thực thể (entity type) 24 1.3.4 Khoá (key) 25 1.3.5 Mối Kết Hợp (relationship) 26 BÀI 2: MÔ HÌNH DỮ LIỆU QUAN HỆ 33 2.1 CÁC KHÁI NIỆM CƠ BẢN 34 2.1.1 Thuộc Tính(attribte): 34 2.1.2 Lược Đồ Quan Hệ (relation schema) 35 2.1.4 Bộ (Tuple) 35 2.1.5 Siêu Khoá – Khoá (super key- key) 36 2.2 CHUYỂN MƠ HÌNH THỰC THỂ KẾT HỢP SANG MƠ HÌNH DỮ LIỆU QUAN HỆ .37 2.3 NGÔN NGỮ ĐẠI SỐ QUAN HỆ 38 2.3.1 Phép Hợp quan hệ(Union) 38 2.3.2 Phép Giao quan hệ (Intersection) .39 2.3.3 Phép Trừ quan hệ (Minus) 39 2.3.4 Tích Decac quan hệ Cartesian Product) Cho hai lược đồ quan hệ 39 2.3.5 Phép chia quan hệ: cho lược đồ quan hệ Q1(A1,A2, ,An) .40 2.3.6 Phép Chiếu (projection) .41 2.3.7 Phép Chọn (Selection) 41 2.3.8 Phép - Kết 41 2.3.9 Phép Kết Tự Nhiên (natural join) 42 BÀI 3: NGÔN NGỮ TRUY VẤN DỮ LIỆU 73 3.1 Mở Đầu 73 3.2 CHỌN CÁC DÒNG CỦA BẢNG – MỆNH ĐỀ WHERE 77 3.3 SẮP XẾP CÁC DÒNG CỦA BẢNG - MỆNH ĐỀ ORDER BY 79 3.4 CÂU LỆNH TRUY VẤN LỒNG NHAU 80 3.5 GOM NHÓM DỮ LIỆU– MỆNH ĐỀ GROUP BY .81 BÀI : RÀNG BUỘC TOÀN VẸN Error! Bookmark not defined 4.1 RÀNG BUỘC TOÀN VẸN Error! Bookmark not defined 4.1.1 Khái Niệm Ràng Buộc Toàn Vẹn Error! Bookmark not defined 4.1.2 Các Yếu Tố Của Ràng Buộc Toàn Vẹn Error! Bookmark not defined 4.2 PHÂN LOẠI RÀNG BUỘC TOÀN VẸN Error! Bookmark not defined 4.2.1 Ràng buộc tồn vẹn có bối cảnh quan hệ Error! Bookmark not defined 4.2.2 Ràng buộc tồn vẹn có bối cảnh nhiều quan hệ Error! Bookmark not defined BÀI 5: LÝ THUYẾT THIẾT KẾ CƠ SỞ DỮ LIỆU 98 5.1 CÁC VấN Đề GặP PHảI KHI Tổ CHứC Dữ LIệU: .99 5.2 PHỤ THUỘC HÀM .100 5.2.1 Định Nghĩa Phụ Thuộc Hàm .100 5.2.2 Cách Xác Định Phụ Thuộc Hàm Cho Lược Đồ Quan Hệ .101 5.2.3 Một Số Tính Chất Của Phụ Thuộc Hàm 101 5.3 BAO ĐÓNG CỦA TẬP PHỤ THUỘC HÀM VÀ BAO ĐĨNG CỦA TẬP THUỘC TÍNH .102 5.3.1 Bao Đóng Của Tập Phụ Thuộc Hàm F 102 5.3.2 Bao Đóng Của Tập Thuộc Tính X 102 5.3.3 Bài Toán Thành Viên 103 5.4 KHOÁ CỦA LƯỢC ĐỒ QUAN HỆ - MỘT SỐ THUẬT TỐN TÌM KHỐ 105 5.4.1.Định Nghĩa Khoá Của Quan Hệ (relation key) 105 5.4.2 Thuật Tốn Tìm Tất Cả Các Khoá Của Một Lược Đồ Quan Hệ Thuật toán 5.4 105 5.5 PHỦ TỐI THIỂU (minimal cover) .108 5.5.1 Tập Phụ Thuộc Hàm Tương Đương (equivalent functional dependancy) 108 5.5.2 Phủ Tối Thiểu 109 5.5.3 Thuật Tốn Tìm Phủ Tối Thiểu Thuật toán 5.6 109 5.6 DẠNG CHUẨN CỦA LƯỢC ĐỒ QUAN HỆ .111 5.6.1 Một Số Khái Niệm Liên Quan Đến Các Dạng Chuẩn Thuộc tính khố/khơng khố .116 5.6.2 Dạng Chuẩn Một (First Normal Form) 117 5.6.3 Dạng Chuẩn (second normal form) 117 5.6.4 Dạng Chuẩn BC (Boyce Codd normal form) 119 PHỤ LỤC (MỘT SỐ ĐỀ KIỂM TRA, ĐÈ THI MÔN CSDL)Error! Bookmark not defined TÀI LIỆU THAM KHẢO Error! Bookmark not defined GIÁO TRÌNH MƠ ĐUN Tên mơ đun: : CƠ SỞ DỮ LIỆU Mã mô đun: MĐ 25 I Vị trí, tính chất mơ đun: * Vị trí: Mơ đun bố trí sau sinh viên học xong môn học chung, môn học, mơ đun đào tạo chun mơn nghề * Tính chất : Là mô đun chuyên ngành tự chọn II Mục tiêu mô đun * Về kiến thức A1 Hiểu công dụng sở liệu * Về kĩ : B1 Xây dựng mơ hình quan hệ B2 Thiết kế sở liệu B3 Viết chương trình thực chương trình máy tính có ứng dụng CSDL * Về lực tự chủ trách nhiệm : C1 Rèn luyện tư logic để phân tích, tổng hợp C2 Thao tác cẩn thận, tỉ mỉ Chương trình khung Mã MH/MĐ I MH01 MH02 MH03 MH04 MH05 MH 06 II MH 07 MĐ 08 MĐ 09 Tên môn học, mô đun Các mơn nhọc chung/ đạicương Chính trị Pháp luật Giáo dục thể chất Giáo dục quốc phòng an ninh Tin học Ngoại ngữ Các môn học, mô đun chuyên môn nghành, nghề Anh văn chuyên ngành Tin học đại cương Tin học văn phòng Thời gian học tập (giờ) Thực hành/thực Lý tập/ thí nghiệm/ thuyế tập t 94 148 Số tín 12 Tổng số 1 30 15 30 15 13 24 2 2 77 45 45 90 1.645 21 15 30 594 21 29 56 967 84 5 60 75 120 30 40 40 25 30 73 5 255 Kiểm tra 13 MH 10 MH 11 MH 12 MH 13 MH 14 MH 15 MH 16 MĐ 17 MĐ 18 MĐ 19 MĐ 20 MĐ 21 MĐ 22 MĐ 23 MH 24 MĐ 25 MĐ 26 MĐ 27 MĐ 28 Internet An toàn vệ sinh CN Kỹ thuật đo lường Kỹ thuật điện tử Ngơn ngữ lập trình C Kiến trúc máy tính Mạng máy tính Kỹ thuật xung số Thiết kế mạch in Lắp ráp cài đặt máy tính Sửa chữa máy tính Sửa chữa nguồn Kỹ thuật sửa chữa hình SC máy in thiết bị ngoại vi Thực tập tốt nghiệp Cơ sở liệu Hệ quản trị CSDL Quản trị mạng Chuyên đề tự chọn Tổng cộng 2 2 4 2 6 45 30 30 30 60 90 90 30 30 105 135 60 125 60 15 20 23 18 20 45 45 20 10 30 45 24 45 16 28 10 36 40 39 18 70 85 30 74 41 2 2 2 5 6 4 89 215 60 60 45 90 1.900 40 26 15 30 691 215 15 30 28 56 1.112 4 97 Chương trình chi tiết mơ đun Số TT Thời gian Tên chương mục Tổng quan sở liệu Dữ liệu – thông tin Các hệ thống xử lý truyền thống Phương pháp sở liệu Phân loại người dùng CSDL Các mơ hình liệu Sơ đồ thực thể liên kết Thực thể,quan Các mơ hình liệu cổ điển Mơ hình thực thể quan hệ Mơ hình liệu quan hệ Mơ hình liệu mạng Mơ hình liệu phân cấp Tổng số Lý thuyết Thực hành Bài tập 5 Kiểm tra Mơ hình sở liệu quan hệ Các khái niệm Ràng buộc tồn vẹn 3.Các phép tính sở liệu quan hệ Ngôn ngữ thao tác liệu Đại số quan hệ Phép tính tập hợp thơng thường Các phép tính đặc biệt Các ngôn ngữ cập nhật liệu Ngôn ngữ truy vấn liệu SQL Tổng quan, qui ước biểu diễn câu lệnh SQL Ngôn ngữ cập nhật liệu Ngôn ngữ truy vấn liệu Ngôn ngữ Định nghĩa liệu Ngơn ngữ kiểm sốt liệu Lý thuyết thiết kế sở liệu Phụ thuộc hàm Phép tách lược đồ quan hệ Chuẩn hoá lược đồ quan hệ Các dạng chuẩn Chuẩn hóa qua phép tách Chuẩn hóa nhờ phép tổng hợp Cộng : 1 14 16 11 14 10 60 40 15 Điều kiện thực mơ đun: Phịng học chun mơn, nhà xưởng Trang thiết bị máy móc + Máy chiếu qua đầu + Máy chiếu đa phương tiện + Máy tính Học liệu, dụng cụ, nguyên vật liệu: * Học liệu: + Bộ tranh giấy phim dùng để dạy môn sở liệu + Tài liệu hướng dẫn môn sở liệu + Tài liệu hướng dẫn học tập thực hành mơn sở liệu + Giáo trình mơn Cơ sở liệu * Dụng cụ: * Vật liệu: + Giấy A4,các loại giấy dùng minh hoạ (nếu có) + Các hình vẽ minh hoạ giải thuật,các mơ hình quan hệ (nếu có) + Tài liệu phát tay (nếu có ) Các điều kiện khác: + Phịng học môn Cơ sở liệu đủ điều kiện học lý thuyết thực hành + Phịng máy tính đầy đủ phần mềm ứng dụng Nội dung phương pháp đánh giá : Nội dung: * Về kiến thức: Được đánh giá qua kiểm tra viết, trắc nghiệm đạt yêu cầu sau: + Hiểu rõ vài toán quản lý thực tế + Xác định điều khiển áp dụng cho việc nhập liệu đảm bảo xác, có chu trình xử lý liệu + Hiểu phân tích mơ hình csdl + Thiết kế sở liệu * Về kỹ năng: Đánh giá kỹ thực hành sinh viên thực hành môn sở liệu đạt yêu cầu sau: - Xây dựng mơ hình quan hệ - Xác định hoạt động csdl (các mơ hình, cách thiết kế, ngôn ngữ …) * Năng lực tự chủ chịu trách nhiệm: Rèn luyện tư logic để phân tích, tổng hợp Thao tác cẩn thận, tỉ mỉ Phương pháp: Được đánh giá hình thức kiểm tra viết, trắc nghiệm 2.1 Cách đánh giá - Áp dụng quy chế đào tạo Trung cấp hệ quy ban hành kèm theo Thông tư số 09/2017/TT-BLĐTBXH, ngày 13/3/2017 Bộ trưởng Bộ Lao động – Thương binh Xã hội - Hướng dẫn thực quy chế đào tạo áp dụng Trường Cao đẳng Cơ giới sau: Điểm đánh giá + Điểm kiểm tra thường xuyên (Hệ số 1) + Điểm kiểm tra định kỳ (Hệ số 2) + Điểm thi kết thúc môn học 2.2 Phương pháp đánh giá Phương pháp đánh giá Thường xuyên Phương pháp tổ chức Viết/ Thuyết trình Định kỳ Viết thực hành Kết thúc môn Vấn đáp Hình thức kiểm tra Tự luận/ Trắc nghiệm/ Báo cáo Tự luận/ Trắc nghiệm/ thực hành Vấn đáp Trọng số 40% 60% Chuẩn đầu đánh giá A1, B1, C1 Số cột Thời điểm kiểm tra Sau 10 A1, B2, C1, C2 Sau 10 A1, B1, B2, Sau 60 học thực hành 2.3 Cách tính điểm thực hành mơ hình B3,C1,C2 - Điểm đánh giá thành phần điểm thi kết thúc mô đun chấm theo thang điểm 10 (từ đến 10), làm tròn đến chữ số thập phân - Điểm mô đun tổng điểm tất điểm đánh giá thành phần mô đun nhân với trọng số tương ứng Điểm mô đun theo thang điểm 10 làm tròn đến chữ số thập phân Hướng dẫn thực mô đun: Phạm vi áp dụng mơ đun: Chương trình mơ đun sử dụng để giảng dạy cho trình độ Trung cấp nghề Hướng dẫn số điểm phương pháp giảng dạy mô đun * Đối với giáo viên, giảng viên: - Giải thích khái niệm thơng tin , liệu … - Trình bày mơ hình liệu quan hệ - Xây dựng mô hình quan hệ - Thiết kế sở liệu - Phát vấn câu hỏi - Cho sinh viên nghe nội dung cụ thể nêu câu hỏi để sinh viên trả lời - Phân nhóm cho sinh viên trao đổi với nhau, trình bày theo nhóm - thực Các phép tính sở liệu quan hệ - Xây dựng , thực tốn Ngơn ngữ truy vấn liệu * Đối với người học: Thực tập giáo viên giao Những trọng tâm chương trình cần ý Giáo viên trước giảng dạy cần phải vào nội dung học chuẩn bị đầy đủ điều kiện thực học để đảm bảo chất lượng giảng dạy Tài liệu cần tham khảo: - Nhập môn sở liệu quan hệ - nhà xuất Khoa học kỷ thuật - Cơ sở Dữ liệu – Phương Lam, Nguyễn Thiên Băng 10 phụ thuộc hàm đầy đủ (tức không tồn X' X cho X' F+ ) A Ví dụ 5.10 Cho lược đồ quan hệ Q(ABC) tập phụ thuộc hàm F={ A BA C; AB C } A ;B A C phụ thuộc hàm đầy đủ Phụ thuộc hàm AB phụ thuộc hàm đầy đủ có A C C khơng Chú ý rằng, phụ thuộc hàm mà vế trái có thuộc tính phụ thuộc hàm đầy đủ 3.3 Dạng Chuẩn Một (First Normal Form) Lược đồ quan hệ Q gọi đạt dạng chuẩn (1NF) tồn thuộc tính Q mang giá trị đơn Chẳng hạn xét quan hệ MASV HOTEN MONHOC 00CDTH189 Nguyễn Văn Thành Kỹ Thuật Lập Trình Cơ Sở Dữ Liệu DIEMTHI Cấu Trúc Dữ Liệu 00CDTH211 Trần Thu Hà Kỹ Thuật Lập Trình Lược đồ quan hệ khơng đạt dạng chuẩn thuộc tính MONHOC, DIEMTHI không mang giá trị đơn (chẳng hạn sinh viên Nguyễn Văn Thành có thuộc tính mơn học Kỹ Thuật Lập Trình, Cơ Sở Dữ Liệu, Cấu Trúc Dữ Liệu Ta hồn tồn đưa quan hệ dạng chuẩn sau: MASV HOTEN MONHOC 00CDTH189 Nguyễn Văn Thành Kỹ Thuật Lập Trình 00CDTH189 Nguyễn Văn Thành Cơ Sở Dữ Liệu 00CDTH189 Nguyễn Văn Thành Cấu Trúc Dữ Liệu 00CDTH211 Trần Thu Hà Kỹ Thuật Lập Trình DIEMTHI Chú ý ta khơng nói thêm, lược đồ quan hệ xét đạt dạng chuẩn 3.4 Dạng Chuẩn (second normal form) 117 Một lược đồ quan hệ Q đạt dạng chuẩn Q đạt dạng chuẩn tất thuộc tính khơng khố Q phụ thuộc đầy đủ vào khoá Nếu lược đồ quan hệ khơng đạt chuẩn ta nói đạt dạng chuẩn1 Chẳng hạn xét lược đồ quan hệ Q(A,B,C,D) F={ B D; C A} AB C,D; Khố {A,B} {B,C} Do D thuộc tính khơng khố, A,B phụ thuộc hàm đầy đủ có B D D khơng Vậy Q đạt chuẩn Ví dụ 5.11: Xác định dạng chuẩn lược đồ quan hệ sau Q(GMVNHP) F={G N; G H; G P; M V; NHP M} Dễ thấy khoá Q G Thuộc tính khơng khố M,V,N,H,P Do phụ thuộc hàm G M; G V; G N; G hàm đầy đủ, nên lược đồ quan hệ Q đạt dạng chuẩn H; G P phụ thuộc Hệ quả: -Q đạt 2NF Q 1NF tập thuộc tính khơng khố Q rỗng -Nếu khố quan hệ có thuộc tính quan hệ đạt chuẩn Ví dụ 5.12: Q(ABCDEH) F={A E; C D; E DH} Dễ thấy khố Q K={ABC} D thuộc tính khơng khố C khơng đạt dạng chuẩn D , C tập thực khố nên Q Dạng Chuẩn (third normal form) Một lược đồ quan hệ Q đạt dạng chuẩn phụ thuộc hàm X A F+ ( F tập phụ thuộc không hiển nhiên định nghĩa Q, A thuộc tính đơn, X tập thuộc tính tập Q+), hai điều kiện sau thoả: Hoặc X siêu khoá Q Hoặc A thuộc tính khố Nhận xét: Nếu Q đạt chuẩn Q đạt chuẩn Ví dụ 5.13 Cho lược đồ quan hệ Q(ABCD) F=[AB K2=[AD];K3=[C] C; D B C ABD] K1=[AB]; 118 khoá, Q khơng có thuộc tính khơng khố nên Q đạt chuẩn Hệ Nếu lược đồ quan hệ Q,F mà Q khơng có thuộc tính khơng khố Q đạt chuẩn Ví dụ 5.14 Xác định dạng chuẩn lược đồ quan hệ sau Q(NGPM) F={NGP M; M P} Dễ thấy khoá Q {NGP}, {NGM} NGP M M có vế trái siêu khố P có vế phải thuộc tính khố Nên Q đạt chuẩn 3.5 Dạng Chuẩn BC (Boyce Codd normal form) Một lược đồ quan hệ Q dạng chuẩn BC với phụ thuộc hàm không hiển nhiên X A F X siêu khố Q Nhận xét: Nếu Q đạt chuẩn BC Q đạt chuẩn Ví dụ 5.15 Xác định dạng chuẩn lược đồ quan hệ sau Q(ACDEIB) F={ACD EBI; CE AD} Dễ thấy Q có hai khố là: ACD CE Các phụ thuộc hàm F có vế trái siêu khoá, nên Q đạt dạng chuẩn BC ĐỊNH LÝ : Các lớp dạng chuẩn lược đồ quan hệ có quan hệ lồng nhau: nghĩa lớp sau nằm trọn lớp trước BCNF 3NF 2NF 1NF Ví dụ 5.16 Chẳng hạn cho lược đồ quan hệ Q(ABCD) F = [AB Q đạt chuẩn 3NF không BCNF Nếu F = [B D, A C, C C; D B; C ABD] ABD] Q đạt dạng chuẩn 2NF không NF Dạng chuẩn lược đồ sở liệu dạng chuẩn thấp lược đồ quan hệ Chú ý: Các dạng chuẩn cao dạng chuẩn bốn (với phụ thuộc đa trị), dạng chuẩn năm (với phụ thuộc chiếu kết) xem tài liệu tham khảo Chuẩn hóa qua phép tách * Chuẩn hóa qua phép tách khơng làm mát thông tin a Phép tách lược đồ quan hệ thành BCNF Định lý : a Giả sử R lược đồ quan hệ với tập phụ thuộc hàm F 119 Gọi 𝛒=(R1, … , Rk) phép tách không mát thông tin R F Gọi Fi hình chiếu F Ri, i=1…k, tức tập (X→Y) ∈ F + cho X⊆ Ri Y⊆ Ri Gọi 𝛅 =(S1,……,Sm) phép tách không mát thông tin Ri Fi Khi phép tách R thành (R1,… , Ri-1, S1… ,Sm, Ri+1… , Rk) F không mát thông tin b Giả sử R, F 𝝆 mục (a) Gọi t= (R1,… , Rk, Rk+1, ……, Rn) phép tách R thành tập lược đồ bao gồm 𝛒 t phép tách khơng làm mát thơng tin F Thuật tốn: Tách lược đồ quan hệ thành BCNF Input : Lược đồ quan hệ R tập phụ thuộc hàm F Output : Phép tách R không làm mát thông tin cho lược đồ quan hệ phép tách dạng BCNF phép chiếu F lược đồ Phương pháp: Cấu trúc phép tạch 𝝆 R theo phương pháp lặp liên tiếp Tại bước phép tách 𝝆 đảm bảo không mát thông tin F Bước đầu: 𝝆 bao gồm R Các bước : Nếu S lược đồ thuôc 𝝆 , S chưa dạng BCNF, chọn X→A phụ thuộc hàm thỏa S, X khơng chứa khóa S, A∉ X Rõ ràng cần phải có số thuộc tính khác S vừa khơng phải A, vừa khơng thuộc X khơng thuộc X phải chứa khóa S Thay S 𝝆 S1và S2 với S1=XA, S2= S - A Theo định lý, phép tách S thành S1 S2 không mát thông tin tập phụ thuộc hàm S S1 ∩ S2 = X, X→S1 –S2 = A Theo bổ đề phần (a) thay S S1 S2 không mát thơng tin Mỗi lược đồ có số thuộc tính S Q trình tiếp tụ tất lược đồ BCNF Chú ý thời điểm 𝝆 đảm bảo khơng mát thơng tin, 𝝆 ban đầu R, mà bước thay đổi 𝝆 bảo toàn tính chất Ví dụ: Cho lược đồ R(CTHRSG), C- giáo trình, T- Thầy giáo, H- giờ, RPhịng học, S- Sinh viên, G- Lớp Tập phụ thuộc hàm: C→T : Mỗi giáo trình có thầy dạy HR→C : Chỉ mơn học (giáo trình) phòng thời điểm HT→R : Tại thời điểm thầy dạy phịng CS→G : Mỗi sin viên lớp theo học giáo trình HS→R : Mỗi sinh viên phịng thời điểm 120 Giải : Khóa R HS Tách lược đồ R thành lược đồ BCNF: Xét CS→G cho R Vi phạm điều kiện BCNF CS khơng chưa khóa Do vậy, dùng thuật toán 3.3 để tách R thành R1(CSG) R2(CTHRS) Bước cần tính F+ chiếu xuống R1 R2, sau kiểm tra lược đồ BCNF hay chưa Có thể biểu diễn trình tách qua sơ đồ sau : b Phép tách lược đồ quan hệ thành 3NF Tương tự phép tách không mát thông tin lược đồ quan hệ thành BCNF, đưa thuật toán tách thành 3NF Thuật toán: Tách lược đồ thành 3NF Input : Lược đồ quan hệ R, tập phụ thuộc hàm F, để khơng làm tín tổng quát, ta giả sử phủ tối thiểu Output : Phép tách không làm mát thông tin R bảo toàn phụ thuộc hàm cho lược đồ 3NF Phương pháp : i Loại bỏ tất thuộc tính R thuộc tính khơng liên quan đến phụ thuộc hàm F, vế trái, vế phải ii Nếu có phụ thuộc hàm F mà liên quan tới tất thuộc tính R kết R iii Ngoài ra, phép tách 𝝆 đưa lược đồ gồm thuộc tính XA cho phụ thuộc hàm X→A thuộc F, X→A1,… , X→An thuộc tính F thay tập thuộc tính XA1A2….An cho XAi (1≤ i≤ n) Quá trình tiếp tục 121 Chú ý : Tại bước kiểm tra lược đồ R, thuộc tính khơng khóa khơng phụ thuộc bắc cầu vào khóa chính, R dạng 3NF, ngược lại cần áp dụng bước (iii) để tách tiếp Ví dụ: Cho lược đồ quan hệ R(CTHRSG) với tập phụ thuộc hàm tối thiểu C→F, HR→C, HT→R, CS→ G HS→R dùng thuật toán cho tập lược đồ dạng chuẩn 3NF: R1(CT), R2(CHR), R3(RHT), R4(CGS) R5(HRS) Chuẩn hóa nhờ phép tổng hợp Trong phần xem xét q trình chuẩn hóa lược đồ quan hệ thành 3NF nhờ phép tách không mát thông tin phụ thuộc hàm Trong phần trình bày q trình chuẩn hóa nhờ phép tổng hợp Điều khác phép tổng hợp so với phép tách thông tin ban đầu gồm tập thuộc tính (hiểu theo nghĩa người sử dụng biết tên thuộc tính) tập phụ thuộc hàm, cịn phương pháp tách, thơng tin ban đầu lược đồ cụ thể Qua phép tổng hợp (hoặc phép tách) kết cho tập lược đồ 3NF Để làm rõ thuật toán, nhắc lại khái niệm phụ thuộc hàm dư thừa phủ không dưa thừa Một FD X→Y dư thừa tập phụ thuộc hàm F F+ = (F{X→Y}) + G phủ không dư thừa F G+ = F+ G khơng chứa FD dư thừa Một thuộc tính thuộc vế trái phụ thuộc hàm gọi dư thừa loại bỏ khơng làm thay đổi bao đóng tập phụ thuộc hàm, tức là: Nếu X→Y∈F, A∈X, A dư thừa (X→A)→Y ∈F+ Định lý : Gọi F tập phụ thuộc hàm R (X→Y)∈F Nếu (V→W)∈F+ X→Y sử dụng cho dẫn xuất h từ F nhờ hệ tiên đề Armstrong (V→X)∈F+ Thuật tốn Tổng hợp thành lược đồ 3NF Input : Tập thuộc tính An, tập phụ thuộc hàm F Output : Tập lược đồ quan hệ 3NF Phương pháp: Tìm phủ khơng dư thừa H F (tức loại bỏ phụ thuộc hàm dư thừa) Phân chia tập phụ thuộc hàm H thành nhóm cho phụ thuộc hàm nhóm có vế trái Mỗi cặp nhóm, ví dụ H1 H2 có vế trái X Y mà tồn song ảnh (X↔Y)(∈ H+ (tức X→Y Y→X) hịa hai nhóm lại với Với 122 A∈Y (nếu X→A)∈ H loại bỏ khỏi H Tương tự cho (Y→B)∈H với B∈X Ở nhóm đạt cấu trúc lược đồ quan hệ bao gồm tất thuộc tính xuất nhóm Mỗi tập thuộc tính xuất vế trái FD nhóm khóa lược đồ quan hệ Các khóa tìm gọi khóa tổng hợp Mỗi tập cấu trúc lược đồ quan hệ Định lý Lược đồ quan hệ R(A1,…., An) tổng hợp qua thuật toán 5.5 từ tập phụ thuộc hàm F 3NF Nói cách khác khơng thuộc tính khơng khóa R phụ thuộc hàm bắc cầu vào khóa R Chứng minh: Giả sử Ai thuộc tính khơng khóa phụ thuộc bắc cầu vào khóa K R (K khơng thiết khóa tổng hợp nên) Tức tồn tập hợp X⊆ {A1,…., An} cho K→X, X→K X→Ai thuộc F+ Ai∈X Cần chứng minh R 3NF, nói cách khác, giả thiết tồn phụ thuộc bắc cầu nêu vô lý Trước hết xem xét Ai phụ thuộc bắc cầu vào khóa tổng hợp R Gọi Z khóa R xuất vế trái phụ thuộc hàm (Z→X)(∈ F+ Z khóa R Hơn X→Z X→Z X→Z Z→K suy Z→K trái với giả thiết X→K Do Z→X, X→Z X→Ai phụ thuộc hàm bắc cầu Gọi H phủ không dư thừa F tính tốn qua thuật tốn Cần Z→Ai xuất H dư thừa Để đạt điều cần đủ để Z→X X→Ai hai phụ thuộc hàm suy dẫn từ H {Z→Ai} Thật vậy, phụ thuộc hàm sử dụng trình tổng hợp R có dạng Z→Ai, Z→Xk thỏa H với Xk∈X Vì Ai ∉ X nên (Z→Xk)∈ H- {Z(∈ Ai} Giả sử tồn cách suy dẫn cho X→Ai H mà có dùng tới Z→Ai Theo bổ đề suy X→Z Nhưng rõ X→Z Như X→Ai suy dẫn mà không cần sử dụng tới Z→Ai Vì Z→X X→Ai, hai phụ thuộc hàm suy dẫn từ H- {Z- Ai} Z→Ai dư thừa H Điều trái với giả thiết H khơng dư thừa Có nghĩa giả thiết có tồn phụ thuộc bắc cầu khơng Ví dụ 1: Cho quan hệ R(A,B,C,D,E,G,H) tập phụ thuộc hàm: F={A D,AB DE, CE G, E H} a Tìm khóa b Xác định dạng chuẩn Giải: a Tìm khóa 123 TN={A,B,C} TG={E} Xi Ø E Xi U TN ABC ABCE (Xi U TN)+ ABCDEGH ABCDEGH Siêu Khóa ABC ABCE Khóa ABC b Xác định dạng chuẩn Có A D theo giả thiết Vậy R khơng dạng chuẩn thuộc tính khơng khóa D Ví dụ 2: Cho R(XYZWPQR), F = {X → Z, XY → WP, XY → ZWQ, XZ → R} Chuẩn hóa R 3NF Giải: B1: Khóa={XY} B2: Xác định tập phủ tối thiểu từ tập F? Ta có phủ tối thiểu: G: = {X→Z, XY →W, XY →P, XY → Q, X → R} B3: Tách thành lược đồ con: R1(XZR), R2(XYWPQ) → R1(XZR), R2(XYWPQ) R1, R2 3NF 124 *BÀI TẬP: a) Cho lược đồ quan hệ Q(ABCD), r quan hệ Q 5.1 r A B C D a1 b1 c1 d1 a1 b2 c1 d1 a1 b3 c2 d1 a2 b2 c2 d2 phụ thuộc hàm sau không thoả r a) D A; b) A,C D; c) CD A; d) D B; b.Cho lược đồ quan hệ Q(ABCD), r quan Q cho sau: A B C D a1 b1 c1 d2 a3 b1 c2 d1 a1 b1 c2 d2 Những phụ thuộc hàm sau thoả r ? AB D; C B; B C; BC A; BD A c.Cho lược đồ quan hệ Q(ABCD), r quan hệ cho sau: A B C D x u x y y x z x z y y y y z w z Những phụ thuộc hàm sau không thoả r ? A 5.2 B; A C; B A; C D; D C; D A a.Cho lược đồ quan hệ Q(ABCD) tập phụ thuộc hàm F = { A B; BC D} Những phụ thuộc hàm sau thuộc F+ ? 125 C D; A D; AD C; AC D; BC A; B CD Cho lược đồ quan hệ Q(ABCDEGH) tập phụ thuộc hàm F ={ b) AB C; B D; CD E; CE GH; G A} Những phụ thuộc hàm sau không thuộc vào F+ ? AB E; CB E; GB E GH; CGH Cho lược đồ quan hệ Q,F sau: c) B; với Q=(ABCD) F=[ A A E; AB C] Trong phụ thuộc hàm sau, phụ thuộc hàm suy từ F ? A D; C B; BC A; A BC Cho lược đồ quan hệ Q(ABCD) tập phụ thuộc hàm F={ 5.3 D D; AB A D; A; AB C} Tính AC+ a b.Chứng minh BD 5.4 a)Q(ABCDEG) Cho F={AB C C; A; BC D; ACD D F+ C B; EG; BE C; CG BD; CE AG} X=[BD], X+=? Y=[CG], Y+=? b)Cho lược đồ quan hệ Q tập phụ thuộc hàm F F={ AB AG I; BE I; E G ; GI Chứng minh AB B E; H} GH c.Tương tự cho tập phụ thuộc hàm F = { AB C; D; 126 CD E; CE GH; G A} Chứng minh AB F = {B A; E; AB DA CE; G d.Q(ABCDEGH) D H; GH C; AC D} Hãy tìm khố Q ? 5.5 Hãy tìm tất khoá cho lược đồ quan Q(BROKER,OFFICE,STOCK,QUANTITY,INVESTOR,DIVIDENT) F={ hệ sau: STOCK DIVIDENT INVESTOR OFFICE } BROKER INVESTOR, STOCK QUANTITY BROKER 5.6.Q(A,B,C,D) F=[ AB D B; C ABD] C; Hãy tìm tất khố Q Cho lược đồ quan hệ Q(MSCD,MSSV,CD,HG) tập phụ thuộc F sau: MSCD CD; 5.7 F=[ CD MSCD; CD,MSSV HG; MSCD,HG MSSV; CD,HG MSSV; MSCD,MSSV HG} Hãy tìm phủ tối thiểu F Xác định phủ tối thiểu tập phụ thuộc hàm sau: Q(ABCDEG) 5.8 F = {AB C C; A; BC D; ACD B; D EG; BE C; CG BD; CE AG} 127 5.9 Các nhận xét sau (Đ) hay sai (S) ? (kẻ bảng sau ghi Đ S cho câu trên) a a.Cho Q F={AB b c d e f g H B} Q đạt dạng chuẩn C; A b Một lược đồ quan hệ Q ln tìm khố c Nếu XY Z X Z Y Z Các thuộc tính khơng tham gia vào vế phải phụ thuộc hàm phải thuộc tính tham gia vào khố d e Nếu X Y YZ W XZ W f Nếu Q đạt dạng chuẩn khoá Q có thuộc tính Q đạt dạng chuẩn ba g Một tập phụ thuộc hàm F có nhiều tập phủ tối thiểu h Nếu X Y U V XU YV 5.10 a.Cho Q(ABCD) F = {AB C; D B; C Hãy kiểm tra xem AB ABD} D có thuộc F+ hay khơng ? Hãy tìm tất khố lược đồ quan hệ Q Xác định dạng chuẩn Q b.Cho Q(A,B,C,D) F={C A; A C; AD B; BC D; AB D; CD B } Hãy tìm phủ tối thiểu F 5.11 Cho biết dạng chuẩn lược đồ quan hệ sau: a.Q(ABCDEG); F=[A BC, C DE, E G] b.Q(ABCDEGH); F=[C AB, D E, B G] c.Q(ABCDEGH); F=[A BC D E, H G] d.Q(ABCDEG); F=[AB C; C F=[AC B; BI B; ABD E;G ACD; ABC A] e.Q(ABCDEGHI); D; H I; ACE BCG, CG AE] Câu 6: Chọn phát biểu cho khái niệm dạng chuẩn 1(1NF)? a Một quan hệ gọi dạng chuẩn (1NF) giá trị thuộc tính giá trị giá trị nguyên tử (đơn, không phân chia được) lấy từ miền giá trị thuộc tính 128 b Một quan hệ gọi dạng chuẩn 1(1NF) tồn thuộc tính phụ thuộc phần vào khóa c Một quan hệ gọi dạng chuẩn (1NF) giá trị thuộc tính giá trị phân chia d Một quan hệ gọi dạng chuẩn 1(1NF) tồn thuộc tính phụ thuộc bắc cầu vào khóa Câu 7: Chọn phát biểu cho khái niệm dạng chuẩn 2(2NF)? a Một quan hệ gọi dạng chuẩn 2(2NF) dạng chuẩn khơng tồn thuộc tính phụ thuộc bắc cầu vào khóa b Một quan hệ gọi dạng chuẩn 2(2NF) dạng chuẩn khơng tồn thuộc tính phụ thuộc phần vào khóa c Một quan hệ gọi dạng chuẩn (2NF) giá trị thuộc tính giá trị giá trị nguyên tử (đơn, không phân chia được) lấy từ miền giá trị thuộc tính d Một quan hệ gọi dạng chuẩn 2(2NF) dạng chuẩn khơng tồn thuộc tính khóa phụ thuộc hàm vào thuộc tính khơng phải khóa Câu 18: Chọn phát biểu cho khái niệm dạng chuẩn 3(3NF)? a Một quan hệ gọi dạng chuẩn 3(3NF) dạng chuẩn khơng tồn thuộc tính khóa phụ thuộc hàm vào thuộc tính khơng phải khóa b Một quan hệ gọi dạng chuẩn (3NF) giá trị thuộc tính giá trị giá trị nguyên tử (đơn, không phân chia được) lấy từ miền giá trị thuộc tính c Một quan hệ gọi dạng chuẩn 3(3NF) dạng chuẩn khơng tồn thuộc tính phụ thuộc bắc cầu vào khóa d Một quan hệ gọi dạng chuẩn 3(3NF) dạng chuẩn khơng tồn thuộc tính khóa phụ thuộc hàm vào thuộc tính khơng phải khóa 129 TÀI LIỆU THAM KHẢO [1]JEFFREY D ULLMAN - Principles of database and knowledge base systems [2].Nguyễn Bá Tường - sở liệu- Lý thuyết thực hành [3].NGUYỄN ĐĂNG TỴ- ĐỖ PHÚC - Cơ sở liệu 130 131