Giáo trình cơ sở dữ liệu (nghề quản trị mạng trình độ cao đẳng)

48 5 0
Giáo trình cơ sở dữ liệu (nghề quản trị mạng   trình độ cao đẳng)

Đ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

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 nguyên 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 GIỚI THIỆU Cơ sở liệu mô đun sở chuyên ngành quan trọng tin học Mục đích giáo trình Cơ sở liệu nhằm chuẩn hóa tài liệu học tập cho sinh viên hệ cao đẳng nghề chuyên ngành Quản Trị Mạng Máy Tính, đồng thời tài liệu tham khảo chuyên ngành khác lĩnh vực Tin học Giáo trình giúp học viên tiếp cận vấn đề cốt lõi mặt lý thuyết: định nghĩa, khái niệm, hệ quả, định lý, giải thuật,…từ áp dụng vào Bài tốn thực tế thiết kế chuẩn hóa sở liệu nói riêng thiết kế hệ thống thơng tin nói chung Giáo trình khơng sâu vào việc chứng minh định lý mà trọng đến việc giải thích ý nghĩa thực tế công thức lý thuyết để từ hướng dẫn học viên cách tiếp cận tư logic, nắm vững kỹ thuật tính tốn bước triển khai giải Bài toán thực tế khía cạnh cơng nghệ Nội dung giáo trình chia làm bài: Bài 1: Tổng quan sở liệu Bài 2: Ngôn ngữ truy vấn liệu Bài 3: Ràng buộc toàn vẹn Bài 4: Lý thuyết thiết kế sở liệu Hy vọng sách cịn tài liệu tham khảo hữu ích cho đồng nghiệp giảng dạy, nghiên cứu lĩnh vực có liên quan Giáo trình ngồi tài liệu tham khảo cịn có sử dụng tài liệu tham khảo nội đồng nghiệp khác Rất mong nhận nhiều ý kiến đóng góp, trao đổi bạn đọc Cần Thơ, ngày 01 tháng 12 năm 2021 Tham gia biên soạn Nguyễn Thị Thúy Lan MỤC LỤC TUYÊN BỐ BẢN QUYỀN LỜI GIỚI THIỆU MỤC LỤC GIÁO TRÌNH MƠ ĐUN Bài 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Một số khái niệm 1.1 Định nghĩa sở liệu 1.2 Ưu điểm sở liệu 1.3 Các đặc trưng phương pháp sở liệu 1.4 Các đối tượng sử dụng CSDL 1.5 Hệ Quản Trị Cơ Sở Dữ Liệu (Data Base Management System) 1.6 Các Ứng Dụng Của Cơ Sở Dữ Liệu Các mơ hình liệu Mơ hình thực thể kết hợp 3.1 Thực Thể (entity) 3.2 Thuộc tính (attribute) 10 3.3 Loại thực thể (entity type) 10 3.4 Khoá (key) 10 3.5 Mối kết hợp (relationship) 11 Mơ hình liệu quan hệ 13 4.1 Các khái niệm 13 4.2 Chuyển mơ hình thực thể kết hợp sang mơ hình liệu quan hệ 14 Bài tập thực hành 15 5.1 Các bước thực 15 5.2 Sinh viên thực hành 16 Bài 2: NGÔN NGỮ TRUY VẤN DỮ LIỆU 20 Mở đầu 20 Tìm thơng tin từ cột bảng – Mệnh đề Select 22 Chọn dòng bảng – Mệnh đề Where 23 Sắp xếp dòng bảng – Mệnh đề Order by 24 Câu lệnh truy vấn lồng 25 Gom nhóm liệu – mệnh đề Group by 27 Bài tập thực hành 29 7.1 Các bước thực 29 7.2 Sinh viên thực hành 29 Bài RÀNG BUỘC TOÀN VẸN 31 Ràng buộc toàn vẹn 31 Phân loại ràng buộc toàn vẹn 33 Bài tập thực hành 35 3.1 Các bước thực 36 3.2 Sinh viên thực hành 36 Bài LÝ THUYẾT THIẾT KẾ CƠ SỞ DỮ LIỆU 38 Các vấn đề gặp phải tổ chức liệu: 38 Phụ thuộc hàm 38 2.1 Định nghĩa phụ thuộc hàm 39 2.2 Cách xác định phụ thuộc hàm cho lược đồ quan hệ 39 2.3 Một số tính chất phụ thuộc hàm – hệ luật dẫn Armstrong 39 Bao đóng tập phụ thuộc hàm bao đóng tập thuộc tính 40 3.1 Bao đóng tập phụ thuộc hàm F 40 3.2 Bao đóng tập thuộc tính X 40 3.3 Bài toán thành viên 41 3.4 Thuật tốn tìm bao đóng tập thuộc tính 41 Khóa lược đồ quan hệ - số thuật tốn tìm khóa 42 4.1 Định nghĩa khóa quan hệ 42 4.2 Thuật toán tìm khóa lược đồ quan hệ 42 4.3 Thuật tốn tìm tất khóa lược đồ quan hệ 42 Phủ tối thiểu 43 5.1 Tập phụ thuộc hàm tương đương 43 5.2 Phủ tối thiểu 44 5.3 Thuật tốn tìm phủ tối thiểu 45 Bài tập thực hành 45 6.1 Các bước thực 45 6.2 Sinh viên thực hành 46 TÀI LIỆU THAM KHẢO 48 GIÁO TRÌNH MƠ ĐUN Tên mô đun: CƠ SỞ DỮ LIỆU Mã mô đun: MĐ10 Vị trí, tính chất, ý nghĩa vai trị mơ đun:  Vị trí: mơ đun học sau mơn Tin học  Tính chất: Cơ sở liệu mô đun sở nghề bắt buộc chương trình đào tạo Cao đẳng Quản Trị Mạng Máy Tính  Ý nghĩa vai trị: Đây mô đun sở nghề Quản Trị Mạng Máy Tính, cung cấp cho sinh viên kiến thức tổng quan sở liệu, ngôn ngữ truy vấn liệu, thuật toán để thiết kế sở liệu Mục tiêu mô đun:  Kiến thức: + Trình bày sơ lược khái niệm sở liệu, mơ hình liệu + Trình bày chi tiết mơ hình thực thể kết hợp (ERD) + Trình bày cụ thể mơ hình liệu quan hệ + Trình bày cách thức truy vấn liệu quan hệ, điển hình ngơn ngữ truy vấn SQL chuẩn + Trình bày khái niệm, cách phân loại, yếu tố ràng buộc toàn vẹn + Trình bày khái niệm lý thuyết sở liệu phụ thuộc hàm, bao đóng, khố, phủ tối thiểu  Kỹ năng: + Phân tích liệu thiết kế mơ hình thực thể kết hợp + Áp dụng quy tắc chuyển đổi từ mơ hình ERD sang mơ hình liệu quan hệ + Thực truy vấn liệu cài đặt + Xây dựng ràng buộc liệu số toán cụ thể + Áp dụng thuật tốn tìm khố, tìm phủ tối thiểu  Năng lực tự chủ trách nhiệm: + Rèn luyện tính cẩn thận, xác, sáng tạo trình tiếp thu kiến thức vận dụng vào việc xây dựng sở liệu cụ thể + Chủ động, tích cực tìm hiểu tài liệu nguồn tập liên quan Nội dung mô đun: Số TT I Tên mô đun Bài 1: Tổng quan sở liệu Một số khái niệm Các mơ hình liệu Mơ hình thực thể kết hợp Thời gian (giờ) Thực hành, thí nghiệm, Kiểm Tổng Lý số thuyết thảo luận, tra tập 12 1 1 1 II III IV Mô hình liệu quan hệ Bài tập thực hành Kiểm tra Bài 2: Ngôn ngữ truy vấn liệu Mở đầu Tìm thơng tin từ cột bảng – Mệnh đề Select Chọn dòng bảng – Mệnh đề Where Sắp xếp dòng bảng – Mệnh đề Order by Câu lệnh truy vấn lồng Gom nhóm liệu – mệnh đề Group by Bài tập thực hành Kiểm tra Bài 3: Ràng buộc toàn vẹn Ràng buộc toàn vẹn Phân loại ràng buộc toàn vẹn Bài tập thực hành Bài 4: Lý thuyết thiết kế sở liệu Các vấn đề gặp phải tổ chức liệu Các phụ thuộc hàm Bao đóng tập phụ thuộc hàm bao đóng tập thuộc tính Khóa lược đồ quan hệ - Một số thuật tốn tìm khóa Phủ tối thiểu Bài tập thực hành Kiểm tra Cộng: 20 1 1 2 1 2 10 24 2 14 3 3 3 60 10 1 10 1 9 30 27 Bài 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Mã bài: MĐ10-01 Giới thiệu: Bài giới thiệu khái qt mơ hình liệu bản, thuật ngữ, khái niệm liên quan sở liệu Thông qua học người đọc hình dung vấn đề cần tiếp cận, khai thác mô đun sở liệu Mô hình liệu quan hệ dạng mơ hình sở liệu bản, khai thác mặt lý thuyết triệt để, triển khai mặt ứng dụng hiệu so với mơ hình liệu khác Trong chương này, tìm hiểu sâu số khái niệm, thuật ngữ Đồng thời tìm hiểu phương pháp xây dựng mơ hình liệu quan hệ dựa ngun tắc chuyển đổi từ mơ hình thực thể mối quan hệ Mục tiêu:  Trình bày sơ lược khái niệm sở liệu, mơ hình liệu  Trình bày chi tiết mơ hình thực thể kết hợp (ERD)  Phân tích liệu thiết kế mơ hình thực thể kết hợp  Trình bày cụ thể mơ hình liệu quan hệ  Áp dụng quy tắc chuyển đổi từ mơ hình ERD sang mơ hình liệu quan hệ  Rèn luyện tính cẩn thận, xác phân tích giải vấn đề Nội dung: Một số khái niệm Mục tiêu: Trình bày sơ lược khái niệm sở liệu 1.1 Định nghĩa sở liệu Dữ liệu lưu trữ thiết bị lưu trữ theo cấu trúc để phục vụ cho nhiều người dùng với nhiều mục đích khác gọi sở liệu 1.2 Ưu điểm sở liệu - Giảm trùng lắp thông tin xuống mức thấp bảo đảm tính qn toàn vẹn liệu - Đảm bảo liệu truy xuất theo nhiều cách khác - Khả chia sẻ thông tin cho nhiều người sử dụng 1.3 Các đặc trưng phương pháp sở liệu - Tính chia sẻ liệu: liệu chia sẻ nhiều người dùng hợp pháp - Tính giảm thiểu dư thừa liệu: Dữ liệu dùng chung cho nhiều phận lưu nơi theo cấu trúc thống - Tính tương thích: Việc loại bỏ dư thừa kéo theo hệ tương thích - Tính tồn vẹn liệu: Đảm bảo số ràng buộc tồn vẹn Khi người dùng chèn, xố, sửa ràng buộc phải kiểm tra chặc chẽ - Tính bảo mật liệu: Đảm bảo an tồn liệu bảo mật thông tin quan trọng - Tính đồng liệu: Thơng thường sở liệu nhiều người dùng truy cập đồng thời Cần có chế bảo vệ chống khơng tương thích - Tính độc lập liệu: Sự tách biệt cấu trúc mơ tả liệu khỏi chương trình ứng dụng sử dụng liệu gọi độc lập liệu Điều cho phép phát triển tổ chức liệu mà khơng sửa đổi chương trình ứng dụng 1.4 Các đối tượng sử dụng CSDL Đối tượng sử dụng người khai thác sở liệu thông qua hệ quản trị CSDL Có thể phân làm ba loại đối tượng: Người quản trị CSDL, người phát triển lập trình ứng dụng, người dùng cuối Người quản trị CSDL: Là người hàng ngày chịu trách nhiệm quản lí bảo trì CSDL như: + Sự xác, toàn vẹn bảo mật liệu ứng dụng CSDL + Lưu trữ dự phòng phục hồi CSDL + Giữ liên lạc với người phát triển lập trình ứng dụng, người dùng cuối + Bảo đảm hoạt động hiệu CSDL hệ quản trị CSDL Người phát triển lập trình ứng dụng: người chuyên nghiệp lĩnh vực tin học có trách nhiệm thiết kế, tạo dựng bảo trì thơng tin cuối cho người dùng Người dùng cuối người không chuyên lĩnh vực tin học, họ chuyên gia lĩnh vực khác có trách nhiệm cụ thể cơng việc Họ khai thác CSDL thơng qua chương trình (phần mềm ứng dụng) xây dựng người phát triển ứng dụng hay công cụ truy vấn hệ quản trị CSDL 1.5 Hệ Quản Trị Cơ Sở Dữ Liệu (Data Base Management System) Để giải tốt vấn đề mà cách tổ chức CSDL đặt nói trên, cần thiết phải có phần mềm chuyên dùng để khai thác chúng Những phần mềm gọi hệ quản trị CSDL Các hệ quản trị CSDL có nhiệm vụ hỗ trợ cho nhà phân tích thiết kế CSDL người khai thác CSDL Hiện thị trường phần mềm có hệ quản trị CSDL hỗ trợ nhiều tiện ích như: MS Access, Visual Foxpro, SQL Server, Oracle, … Mỗi hệ quản trị CSDL cài đặt dựa mơ hình liệu cụ thể Dù dựa mơ hình liệu nào, hệ quản trị CSDL phải hội đủ yếu tố sau: - Ngôn ngữ giao tiếp người sử dụng CSDL, bao gồm: Ngôn ngữ mô tả liệu: Để cho phép khai báo cấu trúc CSDL, khai báo mối liên hệ liệu quy tắc quản lý áp đặt lên liệu Ngơn ngữ thao tác liệu: Cho phép người sử dụng cập nhật liệu (thêm/sửa/xố) Ngơn ngữ truy vấn liệu: cho phép người khai thác sử dụng để truy vấn thông tin cần thiết Cơ sở liệu Ngôn ngữ quản lý liệu: cho phép người quản trị hệ thống thay đổi cấu trúc bảng liệu, khai báo bảo mật thông tin cấp quyền hạn khai thác CSDL cho người sử dụng.,… -Từ điển liệu: Dùng để mô tả ánh xạ liên kết, ghi nhận thành phần cấu trúc CSDL, chương trình ứng dụng, mật mã, quyền hạn sử dụng,… - Cơ chế giải vấn đề tranh chấp liệu: Mỗi hệ quản trị CSDL cài đặt chế riêng để giải vấn đề Một số biện pháp sau thường sử dụng: thứ nhất: cấp quyền ưu tiên cho người sử dụng; thứ hai: Đánh dấu yêu cầu truy xuất liệu, phân chia thời gian, người có yêu cầu trước có quyền truy xuất liệu trước,… - Hệ quản trị CSDL phải có chế lưu (backup) phục hồi (restore) liệu có cố xảy Điều thực sau thời gian định hệ quản trị CSDL tự động tạo CSDL, cách tốn kém, CSDL lớn - Hệ quản trị CSDL phải cung cấp giao diện thân thiện, dễ sử dụng 1.6 Các Ứng Dụng Của Cơ Sở Dữ Liệu Hiện nay, CSDL gắn liền với ứng dụng tin học; chẳng hạn việc quản lý hệ thống thông tin quan nhà nước, việc lưu trữ xử lý thông tin doanh nghiệp, lĩnh vực nghiên cứu khoa học, công tác giảng dạy, việc tổ chức thông tin đa phương tiện,… Các mơ hình liệu Mục tiêu: Trình bày giới thiệu sơ lược mơ hình liệu Mơ hình liệu trừu tượng hố mơi trường thực Mỗi loại mơ hình liệu đặc trưng cho cách tiếp cận liệu khác nhà phân tích thiết kế CSDL Mỗi loại mơ hình liệu có ưu điểm mặt hạn chế nó, có mơ hình liệu trội nhiều người quan tâm nghiên cứu Sau điểm qua lịch sử phát triển mơ hình liệu - Vào năm sáu mươi, hệ CSDL đời dạng mơ hình thực thể kết hợp, mơ hình mạng mơ hình phân cấp - Vào năm bảy mươi, hệ thứ hai CSDL đời Đó mơ hình liệu quan hệ EF Codd phát minh Mơ hình có cấu trúc logic chặt chẽ Đây mơ hình sử dụng rộng khắp cơng tác quản lý phạm vi tồn cầu Việc nghiên cứu mơ hình liệu quan hệ nhằm vào lý thuyết chuẩn hoá quan hệ cơng cụ quan trọng việc phân tích thiết kế hệ CSDL Mục đích nghiên cứu nhằm bỏ phần tử khơng bình thường quan hệ thực phép cập nhật, loại bỏ phần tử dư thừa - Sang thập kỷ tám mươi, mơ hình CSDL thứ ba đời, mơ hình sở liệu hướng đối tượng, mơ hình sở liệu phân tán, mơ hình sở liệu suy diễn,… Trong phần sau đây, chúng tơi trình bày mơ hình liệu tiêu biểu để thiết kế (bước đầu) ứng dụng tin học, mơ hình thực thể kết hợp Trong chương lại giáo trình chúng tơi trình bày mơ hình liệu quan hệ Mơ hình thực thể kết hợp Mục tiêu: Trình bày chi tiết mơ hình thực thể kết hợp (ERD), phân tích liệu thiết kế mơ hình thực thể kết hợp Hiện mơ hình liệu quan hệ thường dùng hệ quản trị CSDL, mơ hình liệu mức vật lý Để thành lập mơ hình này, thường phải dùng mơ hình liệu mức quan niệm để đặc tả, mơ hình dạng mơ hình thực thể kết hợp (sau dùng số quy tắc để chuyển hệ thống từ mơ hình mơ hình liệu quan hệ – quy tắc nói đến mục 2.2) Sau khái niệm mơ hình thực thể kết hợp 3.1 Thực Thể (entity) Thực thể vật tồn phân biệt được, chẳng hạn sinh viên Nguyễn Văn Thành, lớp Cao Đẳng Tin Học 2A, MÔ ĐUN Cơ Sở Dữ Liệu, xe máy có biển số đăng ký 52-0549,… ví dụ thực thể 3.2 Thuộc tính (attribute) Các đặc điểm riêng thực thể gọi thuộc tính Chẳng hạn thuộc tính sinh viên Nguyễn Văn Thành là: mã số, sinh viên, giới tính, ngày sinh, hộ thường trú, lớp theo học,… 3.3 Loại thực thể (entity type) Là tập hợp thực thể có thuộc tính Mỗi loại thực thể phải đặt tên cho có ý nghĩa Một loại thực thể biểu diễn hình chữ nhật Ví dụ sinh viên có mã sinh viên ““02CĐTH019”, “02CĐTH519”, “02TCTH465”,… nhóm lại thành loại thực thể, đặt tên Sinhvien chẳng hạn Tương tự ứng dụng quản lý điểm sinh viên (sẽ trình bày sau đây) ta có loại thực thể Monhoc, Lop, Khoa 3.4 Khoá (key) Khoá loại thực thể E hay tập thuộc tính E dùng để phân biệt hai thực thể E Ví dụ khố loại thực thể Sinhvien MASV, Lớp MALOP, Khoa MAKHOA, Monhoc MAMH,… Cần ý biểu diễn hệ thống mơ hình thực thể kết hợp tên loại thực thể phải khác Trong danh sách thuộc tính loại thực thể tập thuộc tính khố thường gạch liền nét Nếu hệ thống có nhiều loại thực thể, để đơn giản hố mơ hình, người ta nêu tên loại thực thể; cịn thuộc tính loại thực thể liệt kê riêng Hình 1.1 Ví dụ 1.1: Bài toán quản lý điểm sinh viên phát biểu sơ sau: Mỗi sinh viên cần quản lý thông tin như: họ tên (HOTENSV), ngày tháng năm sinh(NGAYSINH), giới tính (NU), nơi sinh(NƠISINH), hộ thường trú (TINH) Mỗi sinh viên cấp mã số sinh viên (MASV) để phân biệt với sinh viên khác trường, sinh viên thuộc lớp Mỗi lớp học có mã số lớp (MALOP) để phân biệt với tất lớp học khác trường: có tên gọi (TENLOP) lớp, lớp thuộc khoa Mỗi khoa có tên gọi (TENKHOA) mã số (MAKHOA) phân biệt với khoa khác Mỗi mơn học có tên gọi (TENMH) cụ thể, học số đơn vị học trình (DONVIHT) )và ứng với mơn học mã số (MAMH) để phân biệt với môn học khác Mỗi giảng viên cần quản lý thông tin: họ tên(HOTENGV), cấp học vị (HOCVI), thuộc chuyên ngành (CHUYENNGANH) gán cho mã số gọi mã giảng viên(MAGV) để phân biệt với giảng viên khác Mỗi giảng viên dạy nhiều mơn nhiều khoa, thuộc quản lý hành khoa Mỗi sinh 10 Ràng buộc tồn vẹn khố chính: Đây trường hợp đặc biệt Ràng Buộc toàn Vẹn liên bộ, RBTV phổ biến thường hệ quản trị CSDL tự động kiểm tra Ví dụ: Với r quan hệ lược đồ quan hệ KHACHHANG ta có RBTV sau: Ràng buộc tồn vẹn tính Ví dụ: Mỗi phịng ban phải có tên gọi Ngồi nhiều ta gặp RBTV khác chẳng hạn RBTV quan hệ sau Ví dụ: KETQUA(MASV,MAMH,LANTHI,DIEM) Mỗi sinh viên đăng thi mơn tối đa lần 2.2 Ràng buộc tồn vẹn phụ thuộc tồn Ràng buộc toàn vẹn khố ngoại cịn gọi ràng buộc tồn vẹn phụ thuộc tồn Cũng giống ràng buộc tồn vẹn khố nội, loại ràng buộc tồn vẹn phổ biến CSDL Ví dụ: 2.3 Ràng buộc toàn vẹn miền giá trị Ràng buộc tồn vẹn có liên quan đến miền giá trị thuộc tính quan hệ Ràng buộc thường gặp Thông thường hệ quản trị CSDL tự động kiểm tra (một số) ràng buộc loại Ví dụ: Với r quan hệ Hoadon ta có ràng buộc tồn vẹn sau 2.4 Ràng buộc tồn vẹn liên thuộc tính Ràng buộc tồn vẹn liên thuộc tính (một quan hệ) mối liên hệ thuộc tính lược đồ quan hệ Ví dụ: Với r quan hệ Hoadon ta có ràng buộc tồn vẹn sau: 34 2.5 Ràng buộc tồn vẹn liên thuộc tính liên quan hệ Ràng buộc loại mối liên hệ thuộc tính nhiều lược đồ quan hệ Ví dụ: Với r, s quan hệ DatTenHang Hoadon Ta có RBTV R5 sau: Ràng buộc tồn vẹn thuộc tính tổng hợp Ràng buộc loại mối liên hệ lược đồ sở liệu Chẳng hạn tổng số tiền phải trả hoá đơn (chitiethd) phải TRỊ GIÁ HỐ ĐƠN hố đơn quan hệ Hoadon Hoặc số lượng học viên lớp phải SOHOCVIEN lớp Ngồi cịn có số loại RBTV khác như: RBTV thuộc tính tổng hợp, RBTV tồn chu trình , RBTV giá trị thuộc tính theo thời gian 2.6 Bài tập thực hành Việc tổ chức kỳ thi tốt nghiệp khoa sau: Mỗi thí sinh có Mã số sinh viên (MASV), MASV xác định thông tin: họ tên (HOTEN), ngày sinh (NGAYSINH), nơi sinh, phái, dân tộc Mỗi lớp có mã lớp (MALOP) nhất, mã lớp xác định thông tin: tên lớp (TENLOP), lớp thuộc quản lý khoa Mỗi khoa có mã khoa (MAKHOA), mã khoa xác định tên khoa (TENKHOA) Mỗi thí sinh phải dự thi tốt nghiệp ba môn Mỗi môn thi có mã mơn thi (MAMT) nhất, mã môn thi xác định thông tin: tên môn thi (TENMT), thời gian làm chương – tính phút (PHUT), ngày thi (NGAYTHI), buổi thi (BUOITHI), môn thi môn lý thuyết hay thực hành (LYTHUYET) Chú ý rằng, MÔ ĐUN cho thi nhiều hệ đặt MAMT khác (chẳng hạn trung cấp cao đẳng ngành công nghệ thông tin thi môn Cơ Sở Dữ Liệu), để diễn tả điều này, mã MÔ ĐUN cần phải ghi (GHICHU) biết mơn thi dành cho khối trung cấp, hay cao đẳng) Mỗi thí sinh ứng với mơn thi có điểm thi (DIEMTHI) nhất, điểm thi chấm theo tTenHang điểm 10 có lấy điểm lẻ đến 0.5 Một thí sinh coi đậu tốt nghiệp điểm thi tất mơn thí sinh lớn 35 Trong phịng thi có thí sinh nhiều lớp Trong kỳ thi, thí sinh thi phịng thi (PHONGTHI) khác nhau, chẳng hạn thí sinh thi tốt nghiệp ba môn Cơ sở liệu, Lập trình C Visual Basic mơn Cơ Sở Dữ Liệu Lập Trình C thi phịng A3.4, cịn mơn thực hành Visual Basic thi phịng máy H6.1 Qua phân tích sơ trên, ta lập lược đồ sở liệu sau: THISINH (MASV, HOTEN, NGAYSINH, NOISINH, PHAI, DANTOC, MALOP) LOP (MALOP, TENLOP, MAKHOA) MONTHI (MAMT, TENMT, LYTHUYET, PHUT, NGAYTHI, BUOITHI, GHICHU) KETQUA (MASV, MAMT, DIEMTHI, PHONGTHI) KHOA (MAKHOA, TENKHOA) Tìm khố cho lược đồ quan hệ Hãy phát biểu ràng buộc tồn vẹn có sở liệu 3.1 Các bước thực Bước 1: Xác định điều kiện ràng buộc Bước 2: Xác định bối cảnh Bước 3: Viết bảng tầm ảnh hưởng Bước 4: Các hành động cần phải có phát có RBTV bị vi phạm 3.2 Sinh viên thực hành Tìm khố THISINH (MASV, HOTEN, NGAYSINH, NOISINH, PHAI, DANTOC, MALOP) LOP (MALOP, TENLOP, MAKHOA) MONTHI (MAMT, TENMT, LYTHUYET, PHUT, NGAYTHI, BUOITHI, GHICHU) KETQUA (MASV, MAMT, DIEMTHI, PHONGTHI) KHOA (MAKHOA, TENKHOA) Ràng buộc toàn vẹn R1:  t1, t2  r t1.MASV  t2.MASV R1 Thêm THISINH + Sửa Xoá - Những trọng tâm cần ý     Xác định điều kiện ràng buộc Xác định bối cảnh Viết bảng tầm ảnh hưởng Các hành động cần phải có phát có RBTV bị vi phạm Bài tập mở rộng nâng cao Quản lý đăng ký chuyên đề Phòng giáo vụ trường đại học muốn tin học hóa việc quản lý học chuyên đề sinh viên Sau kết việc phân tích thiết kế ứng dụng Mỗi sinh viên có mã số nhất, họ tên, thuộc phái, có ngày sinh, địa học ngành 36 Mỗi ngành có mã ngành nhất, có tên ngành Ngoài cần lưu lại số cho biết số chuyên đề mà sinh viên theo học ngành cụ thể phải học, cần lưu lại tổng số sinh viên theo học ngành Sinh viên phải học chuyên đề khác Mỗi chuyên đề có mã có tên Cần lưu lại tên số sinh viên tối đa chấp nhận có lớp mở cho chuyên đề cụ thể Mỗi chuyên đề học sinh viên thuộc nhiều ngành sinh viên thuộc ngành phải học nhiều chuyên đề Mỗi ngành học tối đa chuyên đề Vào học kỳ năm học, ta cần lưu lại chuyên đề mở cho học kỳ năm để sinh viên đăng ký Sinh viên đăng ký chuyên đề có mở Khi sinh viên đăng ký học, lưu lại việc đăng ký học chuyên đề sinh viên vào năm học kỳ Một sinh viên đăng ký vào chuyên đề thuộc ngành học sinh viên mà thơi Mỗi năm có học kỳ Sinh viên đăng ký tối đa chuyên đề học kỳ mà thơi Hãy thiết kế mơ hình ER cho ứng dụng Chuyển mơ hình ER sang mơ hình quan hệ Xác định khóa chính, khóa ngoại liệt kê có phân loại tất ràng buộc toàn vẹn nhận diện Yêu cầu đánh giá kết học tập Nội dung: + Về kiến thức: Trình bày khái niệm, cách phân loại, yếu tố ràng buộc toàn vẹn + Về kỹ năng: Xây dựng ràng buộc liệu số Bài toán cụ thể + Năng lực tự chủ trách nhiệm: Rèn luyện tính cẩn thận, tỉ mỉ việc học làm Bài tập Phương pháp: + Về kiến thức: Được đánh giá hình thức kiểm tra viết, trắc nghiệm, vấn đáp + Về kỹ năng: Đánh giá kỹ thực hành viết ràng buộc toàn vẹn liệu + Năng lực tự chủ trách nhiệm: Rèn luyện tính cẩn thận, tỉ mỉ việc học làm Bài tập 37 Bài LÝ THUYẾT THIẾT KẾ CƠ SỞ DỮ LIỆU Mã bài: MĐ10-04 Giới thiệu: Bài trình bày khái niệm mơ hình liệu quan hệ E.F.Codd, gồm khái niệm quan hệ, phụ thuộc hàm, hệ tiên đề Armstrong, bao đóng, khố Chúng đóng vai trị quan trọng mơ hình liệu quan hệ dùng nhiều việc thiết kế hệ quản trị sở liệu (CSDL) Mục tiêu:  Trình bày khái niệm lý thuyết sở liệu phụ thuộc hàm, bao đóng, khố, phủ tối thiểu  Áp dụng thuật tốn tìm khố, tìm phủ tối thiểu  Rèn luyện tính cẩn thận, xác phân tích giải vấn đề Nội dung: Các vấn đề gặp phải tổ chức liệu: Mục tiêu: Trình bày vấn đề dị thường liệu mắc phải thực tổ chức thiết kế sở liệu Khi thiết kế, tổ chức sở liệu quan hệ ta thường đứng trước vấn đề lựa chọn lược đồ quan hệ: lược đồ tốt hơn? Tại sao? Mục nghiên cứu số tiêu chuẩn đánh giá lược đồ quan hệ thuật toán giúp xây dựng lược đồ sở liệu quan hệ có cấu trúc tốt Có thể nói tổng quảt, lược đồ quan hệ có cấu trúc tốt lược đồ không chứa dư thừa liệu dị thường liệu - Dư thừa liệu trùng lặp thông tin sở liệu - Dị thường liệu cố xảy cập nhật liệu (lặp, dị thường chèn bộ, dị thường xóa bộ, dị thường sửa bộ) làm cho liệu khơng tương thích, bất định mát + Dị thường liệu lặp: số thơng tin bị lặp lại cách vơ ích + Dị thường chèn bộ: khơng thể chèn vào quan hệ, khơng có đầy đủ liệu + Dị thường xóa bộ: ngược lại với dị thường chèn bộ, việc xóa dẫn đến thông tin + Dị thường sửa bộ: việc sửa đổi liệu dư thừa dẫn đến khơng tương thích liệu Cơ sở lý thuyết việc thiết kế lược đồ sở liệu quan hệ tốt khái niệm phụ thuộc liệu Phụ thuộc liệu biểu diễn quan hệ nhân thuộc tính quan hệ Cũng dựa khái niệm phụ thuộc liệu người ta định nghĩa dạng chuẩn lược đồ quan hệ Còn trình biến đổi lược đồ thành lược đồ tương đương thỏa mãn dạng chuẩn gọi trình chuẩn hóa lược đồ quan hệ Phụ thuộc hàm Mục tiêu: Trình bày định nghĩa phụ thuộc hàm, tính chất phụ thuộc hàm (hệ tiên đề Amstrong) 38 2.1 Định nghĩa phụ thuộc hàm Cho lược đồ quan hệ R=(A1, A2, , An) X, Y tập R+ = {A1, A2, , An} Ta nói X xác định hàm Y hay Y phụ thuộc hàm X, ký hiệu XY, quan hệ r lược đồ R thoả mãn: u, v r : u(X) = v(X)  u(Y) = v(Y) Phụ thuộc hàm XY gọi phụ thuộc hàm tầm thường YX (hiển nhiên YX theo định nghĩa ta có XY) Phụ thuộc hàm XY gọi phụ thuộc hàm nguyên tố tập thực ZX thoả ZY Tập thuộc tính K  R gọi khố xác định hàm tất thuộc tính KR phụ thuộc hàm nguyên tố 2.2 Cách xác định phụ thuộc hàm cho lược đồ quan hệ Cách để xác định phụ thuộc thích hợp cho lược đồ quan hệ xem xét nội dung tân từ lược đồ quan hệ Ví dụ số phụ thuộc hàm ứng với lược đồ quan hệ xác định sau: MASV → HOTENSV, NGAYSINH, MALOP, PHAI MALOP → TENLOP, MAKHOA 2.3 Một số tính chất phụ thuộc hàm – hệ luật dẫn Armstrong Để xác định phụ thuộc hàm khác từ tập phụ thuộc hàm có, ta sử dụng quy tắc suy diễn đơn giản để kiểm tra xem phụ thuộc hàm có suy diễn logic từ F hay không Một quy tắc suy diễn gọi hệ tiên đề Armstrong(1974), gồm luật sau: Luật phản xạ (reflexivity) Nếu Y  X X → Y Luật tăng trưởng(augmentation) X → Y => XZ → YZ Luật bắc cầu(transitivity) X →Y, Y → Z => X → Z Các quy tắc suy rộng: Luật hợp (the union rule) Cho X → Y, X → Z => X → YZ Luật bắc cầu giả (the pseudotransitivity rule) Cho X → Y,WY→ Z => XW → Z, Với X, Y, Z, W  R+ Luật phân rã (the decomposition rule) Cho X → YZ => X → Y, X → Z Ví dụ: Cho lược đồ R(ABC) F={ABC, CA} Dùng quy tắc Armstrong ta chứng minh (B,C)(A,B,C) Thật vậy, ta có C  A (theo giả thiết) BC  AB (theo luật tăng trưởng) C  C (theo luật phản xạ) => BC  ABC (đpcm) (theo luật hợp) 39 Bao đóng tập phụ thuộc hàm bao đóng tập thuộc tính Mục tiêu: Trình bày khái niệm bao đóng tập phụ thuộc hàm bao đóng tập thuộc tính, giải thuật xác định bao đóng tương ứng với tập phụ thuộc hàm tập thuộc tính xác định 3.1 Bao đóng tập phụ thuộc hàm F Bao đóng tập phụ thuộc hàm F, ký hiệu F+, tập hợp tất phụ thuộc hàm suy diễn lôgic từ F: F+ = {XY  F╞═ XY} Hay nói cách khác: Bao đóng (closure) tập phụ thuộc hàm F (ký hiệu F+) tập hợp tất phụ thuộc hàm suy từ F dựa vào tiên đề Armstrong Rõ ràng F  F+ Ví dụ: Cho R=(A,B,C) F = {AB, BC} Khi bao đóng F+ gồm phụ thuộc hàm XY thoả (i) X chứa A, Y bất kỳ: A,B,CA,B,C; A,B,CA,B; A,B,CA,C; A,B,CB,C; A,B,CA; A,B,CB; A,B,CB; A,B,CC; A,BA,B,C; A,BA,B; A,BA,C; A,BB,C; A,BA; A,BB; A,BB; A,BC; A,CA,B,C; A,CA,B; A,CA,C; A,CB,C; A,CA; A,CB; A,CB; A,CC; AA,B,C; AA,B; AA,C; AB,C; AA; AB; AB; AC; (ii) X chứa B không chứa A, Y không chứa A: BCBC; BCB; BCC BBC; BB; BC (iii) CC Về mặt lý thuyết ta hồn tồn xây dựng thủ tục tính bao đóng F+ tập phụ thuộc hàm F, thực tế Bài toán xác định F+ khơng khả thi với số thuộc tính phụ thuộc hàm lớn dẫn đến bùng nổ tổ hợp Thay vào xem xét Bài toán khác: "Kiểm tra xem phụ thuộc hàm có thuộc bao đóng F+ hay khơng ?" Bài tốn gọi Bài toán thành viên Bài toán thành viên thiết thực Bài tốn tính bao đóng thực tế phải tìm tất phụ thuộc hàm suy diễn lô-gic từ F Bài toán thành viên liên quan mật thiết với khái niệm bao đóng tập thuộc tính 3.2 Bao đóng tập thuộc tính X Bao đóng tập thuộc tính XR (đối với tập phụ thuộc hàm F), ký hiệu XF+ + (X ), tập hợp tất thuộc tính phụ thuộc hàm vào X: X+ = {A  XAF+} Từ định nghĩa dễ dàng suy ra: XX+ XY  YX+ Nghĩa X+ tập thuộc tính lớn phụ thuộc hàm vào X Ví dụ: Cho R(ABC) F = {AB, BC} Khi ta dễ dàng thấy bao đóng thuộc tính B B+ = {B,C} B{B,C} B khơng xác định A 40 3.3 Bài toán thành viên Qua phần ta nhận thấy X+ định nghĩa thông qua F+ Vấn đề nảy sinh nghiên cứu lý thuyết CSDL là: Cho trước tập phụ thuộc hàm F phụ thuộc hàm f, Bài toán kiểm tra có hay khơng f  F+ gọi Bài tốn thành viên Để giải Bài toán Bài toán thành viên thật khơng đơn giản; F nhỏ F+ lớn Tuy nhiên ta giải cách tính X+ so sánh X+ với tập Y Dựa vào tính chất X → Y  F+  Y  X+ , ta có câu trả lời X → Y  F+ hay khơng ? Như thay giải Bài toán thành viên ta đưa giải Bài toán tìm bao đóng tập thuộc tính 3.4 Thuật tốn tìm bao đóng tập thuộc tính Thuật tốn tìm bao đóng với độ phức tạp O(N2), với N số lượng thuộc tính lược đồ quan hệ Q Dữ Liệu Vào Q, F, X  Q+ Dữ Liệu Ra X+ Ví dụ: lược đồ quan hệ Q(ABCDEGH) thuộc hàm A, DA → CE, D → AC → D} Cho tập phụ F = {B → H, GH → C, Tìm bao đóng tập X = {AC} dựa F Giải: + - X = AC - Đặt Temp = X+ + Xét AC → D, có AC  X+: X+ = X+  D = ACD Loại AC → D khỏi F Lặp bước + + + Xét DA → CE, có DA  X : X = X+  CE = ACDE Loại DA → CE khỏi F Lặp bước + + + + Xét D → H, có D  X : X = X  H = ACDEH Loại D → H khỏi F Lặp bước Vì phụ thuộc hàm U→V cịn lại khơng thỏa điều kiện U  X+ nên X+ = Temp Thuật toán dừng Vậy X+ = {ACDEH} 41 Khóa lược đồ quan hệ - số thuật tốn tìm khóa Mục tiêu: Trình bày định nghĩa khóa lược đồ quan hệ giải thuật xác định khóa, xác định tập tất khóa lược đồ quan hệ cho 4.1 Định nghĩa khóa quan hệ Cho quan hệ R(A1,A2,…,An) xác định tập thuộc tính R + tập phụ thuộc hàm F định nghĩa R, cho K  R+ K khoá R thoả đồng thời hai điều kiện sau: K  R +  F + (hay K+F = R+) (K thoả điều kiện gọi siêu khố) Khơng tồn K'  K cho K'+ = R + Tập S{A1, ,An} siêu khoá R S chứa khố Một lược đồ quan hệ có nhiều siêu khố, nhiều khố 4.2 Thuật tốn tìm khóa lược đồ quan hệ K = Q +; While A  K if (K - A)+ = Q+ then K = K - A K cịn lại khố cần tìm Nếu muốn tìm khố khác (nếu có) lược đồ quan hệ, ta thay đổi thứ tự loại bỏ phần tử K Ví dụ: Cho lược đồ quan hệ R(ABC) tập phụ thuộc hàm F={ A → B; A → C; B → A} Hãy tìm khóa R Giải: K={A,B,C} Loại thuộc tính A, (K-A)+ = R+ nên K={B,C} thuộc tính B khơng loại (K - B)+ ≠ R+ nên K={B,C} Loại thuộc tính C, (K-C)+ = R+ nên K={B} Vậy khóa R B 4.3 Thuật tốn tìm tất khóa lược đồ quan hệ Một số khái niệm hỗ trợ cho thuật toán tìm tất khóa sau đây: - Tập nguồn (TN): chứa tất thuộc tính xuất vế trái mà không xuất vế phải tập phụ thuộc hàm tập thuộc tính khơng tham gia vào tập phụ thuộc hàm F - Tập đích (TD): chứa tất thuộc tính xuất vế phải mà không xuất vế trái tập phụ thuộc hàm - Tập trung gian (TG): chứa tất thuộc tính tham gia vào vế tập phụ thuộc hàm Dữ liệu vào: Lược đồ quan hệ R tập phụ thuộc hàm F Dữ liệu ra: Tất khóa K quan hệ Thuật tốn: Bước 0: Tìm tập thuộc tính nguồn (TN), tập thuộc tính trung gian (TG) 42 Tìm tất tập tập trung gian gọi Xi (bằng phương pháp duyệt nhị phân) if TG =  then K = TN ; kết thúc Ngược lại Qua bước Bước Tìm tất tập TG: Xi S=   Xi  TG if (TN  Xi)+ = R+ then S = S  {TN  Xi} {S tập siêu khố cần tìm} Bước 2: Tính TN  Xi Bước 3: Tính (TN  Xi)+ Bước 4: Nếu Xi+ = R+ Xi siêu khố Nếu tập TN  Xi có bao đóng R+ TN  Xi siêu khố R Giả sử sau bước có m siêu khố: S = {S1,S2,…,Sm} Bước : Xây dựng tập chứa tất khoá R từ tập S Xét Si,Sj S (i  j), Si  Sj ta loại Sj (i, j = m), kết cịn lại tập tất khố cần tìm Ví dụ: Cho lược đồ quan hệ R(ABC) tập phụ thuộc hàm F={ A → B; A → C; B → A} Hãy tìm tất khóa R Giải: Áp dụng thuật tìm tất khóa cho ta có: = {A, B} TN = {  } ; TG Gọi Xi tập tập trung gian Ta lập bảng sau: Xi TN  Xi (TN  Xi)+ Siêu khóa Khóa    A A ABC A A B B ABC B B AB AB ABC AB Vậy lược đồ quan hệ R có hai khóa K1 = {A}, K2 = {B} Phủ tối thiểu Mục tiêu: Trình bày giải thuật xác định phủ tối thiểu tập phụ thuộc hàm có sẵn, qua trình bày khái niệm cách xác định tập phụ thuộc hàm có vế phải thuộc tính, tập phụ thuộc hàm có vế trái khơng dư thừa tập phụ hàm đầy đủ 5.1 Tập phụ thuộc hàm tương đương Cho F G hai tập phụ thuộc hàm, ta nói F G tương đương (hay F phủ G G phủ F) ký hiệu F+ = G+ phụ thuộc hàm thuộc F thuộc G + phụ thuộc hàm thuộc G thuộc F + Ta nói F phủ G G+  F+ 43 Chẳng hạn cho lược đồ quan hệ Q(ABCDEGH), hai tập phụ thuộc hàm F G (xác định Q) tương đương F = {B → A; DA→ CE; D → H; GH→ C; AC→ D; DG → C} G={B→ A; DA→ CE; D → H; GH→ C; AC→ D ;BC → AC; BC → D; DA → AH; AC → DEH} (Việc kiểm tra phụ thuộc hàm G có suy diễn từ F ngược lại xem Bài tập dành cho bạn đọc) 5.2 Phủ tối thiểu Ftt gọi tập phụ thuộc hàm tối thiểu (hay phủ tối thiểu) F thỏa thời ba điều kiện sau: F tập phụ thuộc hàm có vế trái khơng dư thừa F tập phụ thuộc hàm có vế phải thuộc tính F tập phụ thuộc hàm khơng dư thừa 5.2.1 Phụ thuộc hàm có vế trái dư thừa: F tập phụ thuộc hàm lược đồ quan hệ Q, Z tập thuộc tính, Z→Y∈F Nói phụ thuộc hàm Z → Y có vế trái dư thừa (phụ thuộc không đầy đủ) có A∈Z cho: F ≡ F-{Z → Y}∪{(Z-A) → Y} Ngược lại Z → Y phụ hàm có vế trái khơng dư thừa hay Y phụ thuộc hàm đầy đủ vào Z (phụ thuộc hàm đầy đủ) Ta nói F tập phụ thuộc hàm có vế trái không dư thừa F không chứa phụ thuộc hàm có vế trái dư thừa Thuật tốn loại khỏi F phụ thuộc hàm có vế trái dư thừa: Bước 1: - Xét phụ thuộc hàm X→Y F Bước 2: - Với tập thực X’≠ ∅ X - Nếu X'→Y∈ F+ thay X→Y F X'→Y - Lặp lại bước 5.2.2.Tập phụ thuộc hàm có vế phải thuộc tính: Mỗi tập phụ thuộc hàm F tương đương với tập phụ thuộc hàm G mà vế phải phụ thuộc hàm G gồm thuộc tính G gọi tập phụ thuộc hàm có vế phải thuộc tính Ví dụ: F = {A → BC,B → C,AB → D} ta suy F ≡ {A → B, A → C ,B → C,AB → D} = G 5.2.3 Tập phụ thuộc hàm khơng dư thừa: Nói F tập phụ thuộc hàm không dư thừa không tồn F’⊂ F cho F’≡ F Ngược lại F tập phụ thuộc hàm dư thừa Thuật toán loại khỏi F phụ thuộc hàm dư thừa: Bước 1: - Lần lược xét phụ thuộc hàm X → Y F Bước 2: - Nếu X → Y thành viên F - {X → Y} loại X → Y khỏi F Bước 3: - Lặp lại bước cho phụ thuộc hàm F 44 5.3 Thuật tốn tìm phủ tối thiểu Từ điều kiện xác định phủ tối thiểu, ta có thuật tốn tìm phủ tối thiểu sau: Thuật tốn: Bước 1: - Loại khỏi F phụ thuộc hàm có vế trái dư thừa Bước 2: - Tách phụ thuộc hàm có vế phải thuộc tính thành phụ thuộc hàm có vế phải thuộc tính Bước 3: - Loại khỏi F phụ thuộc hàm dư thừa Chú ý: Theo thuật tốn trên, tìm nhiều phủ tối thiểu Ftt để F≡Ftt thứ tự loại phụ thuộc hàm khác thu phủ tối thiểu khác Ví dụ: cho R(MSCD,MSSV,CD,HG) tập phụ thuộc hàm F: F = {MSCD → CD; CD → MSCD; CD,MSSV → HG; MSCD,HG → MSSV; CD,HG → MSSV; MSCD,MSSV → HG} Hãy tìm Ftt F? Kết ta có phủ tối thiểu sau: Ftt = {MSCD → CD; CD → MSCD; CD,HG → MSSV; MSCD,MSSV → HG} Bài tập thực hành Cho lược đồ quan hệ R=ABCDEGH tập phụ thuộc hàm F sau: F= { AB -> CD , C -> EH , G -> A , G -> H , CE -> H } Tìm khố F Tìm phủ tối thiểu ( S ) tập phụ thuộc hàm F 6.1 Các bước thực  Tìm khố: Bước 0: Tìm tập thuộc tính nguồn (TN), tập thuộc tính trung gian (TG) Tìm tất tập tập trung gian gọi Xi (bằng phương pháp duyệt nhị phân) if TG =  then K = TN ; kết thúc Ngược lại Qua bước Bước 1: Tìm tất tập TG: Xi S=   Xi  TG if (TN  Xi)+ = R+ then S = S  {TN  Xi} {S tập siêu khố cần tìm} Bước 2: Tính TN  Xi Bước 3: Tính (TN  Xi)+ Bước 4: Nếu Xi+ = R+ Xi siêu khố Nếu tập TN  Xi có bao đóng R+ TN  Xi siêu khố R Giả sử sau bước có m siêu khoá: S = {S1,S2,…,Sm} Bước 5: Xây dựng tập chứa tất khoá R từ tập S Xét Si,Sj S (i  j), Si  Sj ta loại Sj (i, j = m), kết cịn lại tập tất khố cần tìm  Tìm phủ tối thiểu Bước 1: Loại khỏi F phụ thuộc hàm có vế trái dư thừa Bước 2: Tách phụ thuộc hàm có vế phải thuộc tính thành phụ thuộc hàm có vế phải thuộc tính 45 Bước 3: Loại khỏi F phụ thuộc hàm dư thừa 6.2 Sinh viên thực hành  Tìm khố: Kết quả: Khố BG  Tìm phủ tối thiểu Kết quả: Phủ tối thiểu S = { AB -> C , AB -> D , C -> E , C -> E , G -> A , G -> H } Những trọng tâm cần ý  Thực bước tìm khố  Thực bước tìm phủ tối thiểu Bài tập mở rộng nâng cao Bài 1: 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+ ? C → D; A → D; AD → C; AC → D; BC → A; B → CD b Cho lược đồ quan hệ Q(ABCDEGH) tập phụ thuộc hàm F ={ 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; AB → GH; CGH → E; CB → E; GB → E c Cho lược đồ quan hệ Q,F sau: với Q(ABCD) F={A → B; A → C} Trong phụ thuộc hàm sau, phụ thuộc hàm suy từ F ? A → D; C → D; AB → B; BC → A; A → BC Bài 2: Cho lược đồ quan hệ Q(ABCD) tập phụ thuộc hàm F={ A → D; D → A; AB→C} a Tính AC+ b Chứng minh BD →C Bài 3: a Q(ABCDEG) Cho F={AB → C; C → A; BC → D; ACD → B; D → 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 → E; AG → I; BE → I; E → G ; GI → H } Chứng minh AB → GH c Tương tự cho tập phụ thuộc hàm F = { AB → C; B → D; CD → E; CE → GH; G → A} Chứng minh AB → E; AB → G d Q(ABCDEGH) F = {B →A; DA→CE; D → H; GH→ C; AC→D } Hãy tìm khố Q ? Bài 4: Hãy tìm tất khố cho lược đồ quan hệ sau: Q(BROKER,OFFICE,STOCK,QUANTITY,INVESTOR,DIVIDENT) F={STOCK→DIVIDENT, INVESTOR → BROKER, INVESTOR, STOCK →QUANTITY, BROKER → OFFICE } 46 Bài 5: Cho Q(A,B,C,D), F={AB → C; D → B; C → ABD} Hãy tìm tất khố Q Bài 6: Cho lược đồ quan hệ Q(MSCD,MSSV,CD,HG) tập phụ thuộc F sau: F={MSCD→CD; CD→MSCD; CD,MSSV→HG; MSCD,HG→MSSV; CD,HG→MSSV; MSCD,MSSV→HG} Hãy tìm phủ tối thiểu F Bài 7: Xác định phủ tối thiểu tập phụ thuộc hàm sau: Q(ABCDEG) F = {AB → C; C → A; BC → D; ACD → B; D → EG; BE → C; CG → BD; CE → AG} Bài 8: a Cho Q(ABCD) F = {AB →C; D →B; C →ABD} Hãy kiểm tra xem AB → D có thuộc F+ hay khơng ? Hãy tìm tất khố lược đồ quan hệ 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 Trình bày khái niệm lý thuyết sở liệu phụ thuộc hàm, bao đóng, khố, phủ tối thiểu Áp dụng thuật tốn tìm khố, tìm phủ tối thiểu Rèn luyện tính cẩn thận, xác phân tích giải vấn đề Yêu cầu đánh giá kết học tập Nội dung: + Về kiến thức: Trình bày khái niệm lý thuyết sở liệu phụ thuộc hàm, bao đóng, khố, phủ tối thiểu + Về kỹ năng: Áp dụng thuật tốn tìm khố, tìm phủ tối thiểu + Năng lực tự chủ trách nhiệm: Rèn luyện tính cẩn thận, xác việc học làm Bài tập Phương pháp: + Về kiến thức: Được đánh giá hình thức kiểm tra viết, trắc nghiệm, vấn đáp + Về kỹ năng: Đánh giá kỹ thực hành giải Bài tốn tìm khố, tìm phủ tối thiểu + Năng lực tự chủ trách nhiệm: Rèn luyện tính cẩn thận, xác việc học làm Bài tập 47 TÀI LIỆU THAM KHẢO Lê Tiến Vương, Nhập môn sở liệu quan hệ, Nhà xuất Giáo dục Vũ Đức Thi, Cơ sở liệu kiến thức thực hành, Nhà xuất thống kê Nguyễn An Tế, Giáo trình nhập mơn sở liệu, ĐHKHTN- ĐHQGTPHCM Đỗ Trung Tuấn, Cơ sở liệu, Nhà xuất giáo dục Giáo trình Cơ sở liệu, ĐHCN TPHCM 48

Ngày đăng: 23/12/2023, 10:33

Tài liệu cùng người dùng

Tài liệu liên quan