Giáo trình môn học Cơ sở dữ liệu giúp sinh viên có thể: Trình bày được các khái niệm về các thực thể, bộ, quan hệ, khóa, phụ thuộc hàm…; trình bày được các mô hình cơ sở dữ liệu quan hệ; trình bày được cú pháp của ngôn ngữ sql; trình bày được các dạng chuẩn của lược đồ quan hệ.
MỤC LỤC LỜI GIỚI THIỆU Error! Bookmark not defined MỤC LỤC CHƯƠNG TRÌNH MƠN HỌC CƠ SỞ DỮ LIỆU Chương TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Chương MƠ HÌNH DỮ LIỆU QUAN HỆ 18 Chương NGÔN NGỮ TRUY VẤN DỮ LIỆU 32 Chương RÀNG BUỘC TOÀN VẸN 60 Chương LÝ THUYẾT THIẾT KẾ CƠ SỞ DỮ LIỆU 72 TÀI LIỆU THAM KHẢO: 96 CHƯƠNG TRÌNH MƠN HỌC CƠ SỞ DỮ LIỆU Mã môn học: MH16 I Vị trí, ý nghĩa, vai trị mơn học: Mơn học Cơ sở liệu bố trí sau học xong mơn Tin học đại cương, lập trình bản, tốn ứng dụng Là mơn học kỹ thuật sở, thuộc môn học, mô đun đào tạo nghề II Mục tiêu mơn học: - Trình bày khái niệm, thuật ngữ sở liệu; - Vận dụng mơ hình liệu sở liệu quan hệ vào việc thiết kế sở liệu cho toán cụ thể; - Sử dụng ngôn ngữ truy vấn liệu quan hệ thành thạo; - Mô tả dạng chuẩn chuẩn hóa tốn sở liệu trước cài đặt; - Rèn luyện cho sinh viên khả tự nghiên cứu tài liệu tự giác làm việc nhóm III Nội dung mơn học: Mã chương MH1601 MH1602 MH1603 MH1604 Tên chương Tổng quan sở liệu Mơ hình liệu quan hệ Ngơn ngữ truy vấn liệu Ràng buộc toàn vẹn Lý thuyết thiết MH16kế sở 05 liệu Loại dạy Địa điểm Tích hợp Lớp học 10 5 Tích hợp Lớp học 15 Tích hợp Lớp học 20 10 Tích hợp Lớp học Tích hợp Lớp học 38 19 17 Tổng số Thời lượng Lý Thực thuyết hành Kiểm tra IV YÊU CẦU VỀ ĐÁNH GIÁ HỒN THÀNH MƠN HỌC Về kiến thức: Đánh giá thơng qua kiểu tra viết, trắc nghiệm đạt yêu cầu sau: + Trình bày khái niệm thực thể, bộ, quan hệ, khóa, phụ thuộc hàm, + Trình bày mơ hình sở liệu quan hệ + Trình bày cú pháp ngơn ngữ SQL + Trình bày dạng chuẩn lược đồ quan hệ Về kỹ năng: Sau học xong mơn học này học viên có khả năng: + Phân tích liệu vẽ mơ hình liệu thực thể - kết hợp (mơ hình E-R); chuyển đổi E-R sang lược đồ quan hệ Xác định khóa, chuẩn hóa lược đồ mức tốt + Sử dụng thành thạo ngôn ngữ truy vấn liệu SQL chuẩn cho việc truy vấn liệu cài đặt Về thái độ: Cẩn thận, tự tìm thêm tài liệu tham khảo, sưu tầm mơ hình sở liệu doanh nghiệp để tự học hỏi thêm Chương TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Mã chương MH16-01 Giới thiệu: 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 Thực thao tác an toàn với máy tính Nội dung: Một số khái niệm 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 Hình dung: Cơ sở liệu bảng hai chiều Chiều ngang: tập hợp đặc điểm đối tượng cần quản lí gọi ghi hay Chiều dọc: gồm điểm đối tượng quản lý gọi trường 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 tồ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: Dữ 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 chỗ 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 toà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 toà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 (cả đặt chỗ ghế khơng trùng nhau) - 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 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, tồ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 đự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ở Dữ 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ơ 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 cịn 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 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ôn học 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, …(Trong giáo trình này, tên thuộc tính viết chữ in hoa) 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,…(Trong giáo trình này, tên loại thực thể in hoa ký tự đầu tiên, ký tự lại viết thường) 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 Ví dụ 1.1: Bài tố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 viên với môn học phép thi tối đa lần, lần thi (LANTHI), điểm thi (DIEMTHI) Mỗi môn học lớp học phân công cho giảng viên dạy (tất nhiên giảng viên dạy nhiều mơn lớp) Với tốn loại thực thể cần quản lý như: Sinhviên, Mônhọc, Khoa, Lớp, Giảngviên Ví dụ với loại thực thể Sinhviên cần quản lý thuộc tính như: MASV,HOTENSV, NGAYSINH,… ta biểu diễn sau: Thuộc tính phụ thuộc đầy đủ/ Phụ thuộc hàm đầy đủ: A thuộc tính phụ thuộc đầy đủ vào tập thuộc tính X X → A phụ thuộc hàm đầy đủ (tức không tồn X' X cho X → A F+) Chú ý phụ thuộc hàm mà vế trái có thuộc tính phụ thuộc hàm đầy đủ 6.2 Dạng chuẩn (First Normal Form) Định nghĩa: Lược đồ quan hệ R đạt dạng chuẩn (1NF) tồn thuộc tính R mang giá trị đơn Ví dụ: Xét quan hệ KETQUA sau: MASV 01234 HOVATEN Nguyễn Văn An 02345 Lê Văn Thịnh KHOA CNTT CNTT TENMONHOC DIEMTHI Cơ sở liệu Toán rời rạc Lập trình web Cơ sở liệu Quan hệ khơng đạt chuẩn 1NF thuộc tính TENMONHOC, DIEMTHI thứ không mang giá trị đơn Ta đưa quan hệ quan hệ KETQUA1 đạt chuẩn sau: MASV HOVATEN KHOA TENMONHOC DIEMTHI 01234 Nguyễn Văn An CNTT Cơ sở liệu 01234 Nguyễn Văn An CNTT Toán rời rạc 01234 Nguyễn Văn An CNTT Lập trình web 02345 Lê Văn Thịnh CNTT Cơ sở liệu Chú ý xét dạng chuẩn, không xét thêm mặc định quan hệ xét đạt dạnh chuẩn 6.3 Dạng chuẩn (Second Normal Form) 83 Định nghĩa: Một lược đồ quan hệ R dạng chuẩn (2NF) R đạt dạng chuẩn thuộc tính khơng khóa R phụ thuộc đầy đủ vào khóa Hệ quả: Nếu R đạt dạnh chuẩn tập thuộc tính khơng khóa R rỗng R đạt chuẩn 2 Nếu tất khóa quan hệ gồm thuộc tính quan hệ đạt chuẩn Thuật toán kiểm tra dạng chuẩn 2: Vào: lược đồ quan hệ R, tập phụ thuộc hàm F Ra: Khẳng định R đạt không đạt chuẩn Bước 1: Tìm tất khóa R Bước 2: Với khóa K, tìm bao đóng tất tập thực K Bước 3: Nếu có bao đóng S+ chứa thuộc tính khơng khóa R khơng đạt chuẩn Ngược lại đạt chuẩn Ví dụ: Cho lược đồ quan hệ R(ABCD) tập phụ thuộc hàm F={AB→C; B→D; BC→A} Hỏi R có đạt chuẩn hay khơng? Giải: - Tìm tất khóa R: TN = {B}, TG = {AC} Xi TN Xi (TN Xi)+ Siêu khóa Khóa B BD - - A BA BACD BA BA C BC BCAD BC BC AC BAC BACD BAC - Tất khóa R K1 = {BA}, K2 = {BC} Gọi Z tập thuộc tính khóa, X tập thuộc tính khơng khóa, ta có: Z = K1 K2 = {BAC} 84 X = R+ \ Z = {ABCD} \ {BAC} = {D} Ta thấy B⊂K1, B→D, mà D thuộc tính khơng khóa Vì thuộc tính khơng khóa D khơng phụ thuộc đầy đủ vào khóa nên R khơng đạt chuẩn 6.4 Dạng chuẩn (Third Normal Form) Định nghĩa: Một lược đồ quan hệ R đạt chuẩn (3NF) phụ thuộc hàm X→A ∈ F+ với A ∉ X có - Hoặc X siêu khóa - Hoặc A thuộc tính khóa Hệ quả: Nếu R đạt chuẩn R đạt chuẩn 2 Nếu R khơng có thuộc tính khơng khóa R đạt chuẩn Định lý: R lược đồ quan hệ F tập phụ thuộc hàm có vế phải thuộc tính R đạt chuẩn phụ thuộc hàm X→A ∈ F+ với A ∉ X có - Hoặc X siêu khóa - Hoặc A thuộc tính khóa (Việc chứng minh định lý xem tập nâng cao) Thuật toán kiểm tra dạng chuẩn 3: Vào: lược đồ quan hệ R, tập phụ thuộc hàm F Ra: Khẳng định R đạt không đạt chuẩn Bước 1: Tìm tất khóa R Bước 2: Từ F tạo tập phụ thuộc hàm tương đương Ftt có vế phải thuộc tính Bước 3: Nếu phụ thuộc hàm X→A ∈ Ftt với A ∉ X có X siêu khóa A thuộc tính khóa R đạt chuẩn Ngược lại R khơng đạt chuẩn Ví dụ: Cho lược đồ quan hệ R(ABCD), F = {AB→C; D→B; C→ABD} Hỏi R có đạt chuẩn hay khơng? 85 Giải: - Tìm tất khóa R: TN={∅} TG={ABCD} Xi TN Xi (TN Xi)+ Siêu khóa Khóa - - A A A - - B B B - - C C CABD C C D D DB - - AB AB ABCD AB AB AC AC ACBD AC - AD AD ADBC AD AD BC BC BCAD BC - BD BD BD - - CD CD CDAB CD - ABC ABC ABCD ABC - ABD ABD ABDC ABD - ACD ACD ACDB ACD - BCD BCD BCDA BCD - ABCD ABCD ABCD ABCD - Tất khóa R K1 = {C}, K2 = {AB}, K3 = {AD} Gọi Z tập thuộc tính khóa, X tập thuộc tính khơng khóa, ta có: Z = K1 K2 K3 = {CABD} X = R+ \ Z = {ABCD} \ { CABD } = { } Vì tập thuộc tính khơng khóa X = { } nên R đạt chuẩn (theo hệ 2) 6.5 Dạng chuẩn BC (Boyce Codd Normal Form) Định nghĩa: Một lược đồ quan hệ R đạt dạng chuẩn BC phụ thuộc hàm X→A ∈ F+ với A∉X có X siêu khóa 86 Hệ quả: Nếu R đạt chuẩn BC R đạt chuẩn (hiển nhiên định nghĩa) Mỗi lược đồ có hai thuộc tính đạt chẩn BC (xét phụ thuộc hàm có R) Định lý: R lược đồ quan hệ F tập phụ thuộc hàm có vế phải thuộc tính R đạt chuẩn BC phụ thuộc hàm X→A ∈ F+ với A∉X có X siêu khóa (Việc chứng minh định lý xem tập nâng cao) Thuật toán kiểm tra dạng chuẩn BC: Vào: lược đồ quan hệ R, tập phụ thuộc hàm F Ra: Khẳng định R đạt không đạt chuẩn BC Bước 1: Tìm tất khóa R Bước 2: Từ F tạo tập phụ thuộc hàm tương đương Ftt có vế phải thuộc tính Bước 3: Nếu phụ thuộc hàm X→A ∈ Ftt với A ∉ X có X siêu khóa R đạt chuẩn BC Ngược lại R khơng đạt chuẩn BC Ví dụ: Cho lược đồ quan hệ R(ABCDEI), F = {ACD→EBI; CE→AD} Hỏi R có đạt chuẩn BC hay khơng? Giải: - Tìm tất khóa R: TN={C} TG={ADE} Xi TN Xi (TN Xi)+ Siêu khóa Khóa C C - - A CA CA - - D CD CD - - E CE CEADBI CE CE 87 AD CAD CADEBI CAD CAD AE CAE CAEDBI CAE - DE CDE CDEABI CDE - ADE CADE CADEBI CADE - Tất khóa R K1 = {CE}, K2 = {CAD} Gọi Z tập thuộc tính khóa, X tập thuộc tính khơng khóa, ta có: Z = K1 K2 = {CEAD} X = R+ \ Z = { ABCDEI } \ { CEAD } = {BI} - Tìm Ftt có vế phải thuộc tính Ftt = { ACD→E; ACD→B; ACD→I; CE→A; CE→D } Ta nhận thấy phụ thuộc hàm Ftt có vế trái siêu khóa nên R đạt chuẩn BC Thuật toán kiểm tra dạng chuẩn lược đồ quan hệ Vào : lược đồ quan hệ R, tập phụ thuộc hàm F Ra : khẳng định R đạt chuẩn gì? Bước 1: Tìm tất khóa R Bước 2: Kiểm tra chuẩn BC, R đạt chuẩn BC, kết thúc thuật toán Ngược lại qua bước Bước 3: Kiểm tra chuẩn 3, R đạt chuẩn 3, kết thúc thuật toán, ngược lại qua bước Bước 4: Kiểm tra dạng chuẩn 2, R đạt chuẩn 2, kết thúc thuật toán, ngược lại R đạt chuẩn Định nghĩa: Dạng chuẩn lược đồ sở liệu dạng chuẩn thấp dạng chuẩn lược đồ quan hệ 88 Bài tập sản phẩm thực hành 5.1 I Kiến thức: Câu 1: Phụ thuộc hàm: Định nghĩa? Cách xác định phụ thuộc hàm? Nêu tính chất phụ thuộc hàm? Câu 2: Trình bày thuật tốn tìm bao đóng tập thuộc tính? Câu 3: Định nghĩa khóa lược đồ quan hệ? Trình bày giải thuật tìm tất khóa lược đồ quan hệ? Câu 4: Nêu định nghĩa dạng chuẩn lược đồ quan hệ? Trình bày giải thuật kiểm tra dạng chuẩn ? II Kỹ năng: Bài 1: Cho lược đồ quan hệ R(B,C,D,E,F,G,I,J) tập phụ thuộc hàm P = { I→B; DE→GJ; D→C; CF→J; B→I; C→G; F→J } a Tìm tất khố lược đồ quan hệ R b Tìm phủ tối thiểu tập phụ thuộc hàm P Bài 2: Cho lược đồ quan hệ S(A,B,C,D,E,F,G) tập phụ thuộc hàm P = {B→FG; F→CE; G→BD;B→A} Chứng tỏ phụ thuộc hàm AB→D suy diễn từ P nhờ hệ luật dẫn Amstrong? (Nêu rõ áp dụng luật gì) Câu 3: Cho lược đồ quan hệ Q(A,B,C,D,E) tập phụ thuộc hàm F = {A→BC; C→DE} - Lược đồ quan hệ Q đạt dạng chuẩn nào? - Nếu chưa đạt dạng chuẩn (3NF) phân rã Q thành lược đồ quan hệ đạt tối thiểu dạng chuẩn bảo tồn thơng tin Đánh giá kết học tập Cách TT Tiêu chí đánh giá thức phương đánh giá 89 pháp Điểm tối đa Kết thực người học I Kiến thức Phụ thuộc hàm 1.1 Định nghĩa Vấn đáp, đối chiếu với nội 1.2 Cách xác định phụ thuộc hàm dung học 1.3 Tính chất phụ thuộc hàm Thuật tốn tìm bao đóng Vấn đáp, đối tập thuộc tính chiếu với nội Khóa lược đồ 3.1 Định nghĩa khóa chiếu với nội 3.2 Giải thuật tìm tất khóa dung học Các dạng chuẩn Vấn đáp, đối Vấn đáp, đối 4.1 Định nghĩa dạng chuẩn chiếu với nội dung học 4.2 Giải thuật kiểm tra dạng chuẩn Cộng: 10 đ II Kỹ + Phân tích yêu cầu Làm tập đối toán chiếu với + Xác định khóa dung học cho quan hệ 90 nội 10 lược đồ + Xác định phủ tối thiểu + Xác định dạng chuẩn lược đồ quan hệ + Chuẩn hóa cách phân rã (nâng cao) Cộng: 10đ III Thái độ Tác phong công nghiệp Theo dõi việc 1.1 Đi học đầy đủ, thực hiện, đối 1,5 chiếu với nội 1.2 Không vi phạm nội quy lớp quy trường học 1.3 Tính cẩn thận, tỉ mỉ Quan sát việc thực tập Đảm bảo thời gian thực Theo tập 1,5 dõi thời gian thực tập, đối chiếu với thời gian quy định Đảm bảo an toàn lao động Theo dõi việc vệ sinh công nghiệp thực hiện, đối 3.1 Tuân thủ quy định an tồn chiếu 3.3 Vệ sinh phịng học quy định với quy định an tồn vệ sinh cơng nghiệp Cộng: 10 đ 91 KẾT QỦA HỌC TẬP Kết Tiêu chí đánh giá thực Hệ số Kiến thức 0,3 Kỹ 0.4 Thái độ 0,3 Kết qủa học tập Cộng: BÀI TẬP TỰ GIẢI: 5.1 a) Cho lược đồ quan hệ Q(ABCD), r quan hệ Q phụ thuộc hàm sau không thoả r a) D → A; b) AC → D; c) CD →A; d) D → B; b.Cho lược đồ quan hệ Q(ABCD), r quan Q cho sau: Những phụ thuộc hàm sau thoả r ? AB → D; C → B; B → C; BC → A; 92 BD → A c.Cho lược đồ quan hệ Q(ABCD), r quan hệ cho sau: Những phụ thuộc hàm sau không thoả r ? A →B; A → C; B → A; C → D; D → C; D → A 5.2 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; 5.3 BC → A; A → BC 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 5.4 a)Q(ABCDEG) Cho F={AB → C; C → A; BC → D; ACD → B; D → EG; BE → C ; CG → BD; CE → AG} X=[BD], X+=? 93 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 ? 5.5 Hãy tìm tất khoá cho lược đồ quan hệ sau: Q(BROKER,OFFICE,STOCK,QUANTITY,INVESTOR,DIVIDENT) F={STOCK→DIVIDENT, INVESTOR → BROKER, INVESTOR, STOCK → QUANTITY, BROKER → OFFICE } 5.6 Cho Q(A,B,C,D), F={AB → C; D → B; C → ABD} Hãy tìm tất khố Q 5.7 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 5.8 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} 5.9 Các nhận xét sau (Đ) hay sai (S) ? (kẻ bảng sau ghi Đ S cho câu trên) 94 a.Cho Q F={AB → C; A →B} Q đạt dạng chuẩn b.Một lược đồ quan hệ Q ln tìm khố c.Nếu XY →Z X → Z Y → Z d.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 khoá e.Nếu X → Y YZ → W XZ → W f.Nếu Q đạt dạng chuẩn khố 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 →ABD} Hãy kiểm tra xem AB → D có thuộc F+ hay khơng ? Hãy tìm tất khoá 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 → B; ABD → E;G → A] e.Q(ABCDEGHI);F=[AC→B; BI→ACD; CG→AE] 95 ABC→D; H→I; ACE→BCG, TÀI LIỆU THAM KHẢO [1] Lê Tiến Vương, Nhập môn sở liệu quan hệ, Nhà xuất Giáo dục, 2000 [2] Vũ Đức Thi, Cơ sở liệu kiến thức thực hành, Nhà xuất thống kê 1997 [3] Nguyễn An Tế, Giáo trình nhập môn sở liệu, ĐHKHTNĐHQGTPHCM 1996 [4] Đỗ Trung Tuấn, Cơ sở liệu, Nhà xuất giáo dục, 1998 96 PHỤ LỤC 97 ...CHƯƠNG TRÌNH MƠN HỌC CƠ SỞ DỮ LIỆU Mã mơn học: MH16 I Vị trí, ý nghĩa, vai trị mơn học: Mơn học Cơ sở liệu bố trí sau học xong môn Tin học đại cương, lập trình bản, tốn ứng dụng Là mơn học kỹ... mơn học kỹ thuật sở, thuộc môn học, mô đun đào tạo nghề II Mục tiêu môn học: - Trình bày khái niệm, thuật ngữ sở liệu; - Vận dụng mô hình liệu sở liệu quan hệ vào việc thiết kế sở liệu cho tốn cụ... gia vào xây dựng cơng trình Cơng ty xây dựng ABC tổ chức quản lý sau: Cùng lúc công ty tham gia xây dựng nhiều cơng trình, cơng trình có mã số cơng trình (MACT), mã số cơng trình xác định thơng