HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN I ***** ĐỀ CƯƠNG MÔN HỌC (Phương pháp đào tạo theo tín chỉ) TÊN HỌC PHẦN: CƠ SỞ DỮ LIỆU Mã học phần: INT 1313 (3 tín chỉ) Biên soạn NGUYỄN QUỲNH CHI Hà Nội - 2012 1 ĐỀ CƯƠNG HỌC PHẦN: CƠ SỞ DỮ LIỆU Khoa: Công nghệ thông tin I Bộ môn: Hệ thống thông tin 1. Thông tin về giảng viên (Những Giảng viên có thể tham gia giảng dạy được học phần hoặc Bộ môn có kế hoạch phân công Giảng viên chuẩn bị giảng dạy môn học) 1.1 Giảng viên 1: Họ và tên: Nguyễn Quỳnh Chi Chức danh, học hàm, học vị: Giảng viên, Thạc sỹ Địa chỉ liên hệ: Khoa CNTT, Học viện công nghệ BCVT P903 nhà A2 Điện thoại: 0932242616 , Email: chinq@ptit.edu.vn Các hướng nghiên cứu chính: Kho dữ liệu, các phương pháp học máy để khai phá dữ liệu, cơ sở dữ liệu Thông tin về trợ giảng (nếu có): 1.2 Giảng viên 2: Họ và tên: Chức danh, học hàm, học vị: Địa chỉ liên hệ: Điện thoại: , Email: Các hướng nghiên cứu chính: Thông tin về trợ giảng (nếu có): 2. Thông tin chung về môn học - Tên môn học: Cơ sở dữ liệu - Tên tiếng Anh: Database system - Mã môn học: INT 1313 - Số tín chỉ (TC): 3 - Môn học: Bắt buộc ☐ Lựa chọn☐ - Các môn học tiên quyết: Nhập môn Logic (Môn học A là môn học tiên quyết của môn học B thì sinh viên phải hoàn thành môn học A với kết quả đạt yêu cầu theo Quy định mới được dự lớp môn học B) - Môn học trước: Toán rời rạc, Cấu trúc dữ liệu và giải thuật - Môn học song hành: Ngôn ngữ lập trình - Các yêu cầu đối với môn học (nếu có): Phòng học lý thuyết có máy chiếu và máy tính. Phòng thực hành cần cài đặt hệ quản trị cơ sở dữ liệu và ngôn ngữ lập trình. - Giờ tín chỉ: o Lý thuyết: 32 tiết o Chữa Bài tập/Thảo luận/Hoạt động nhóm: 8 tiết o Thí nghiệm, thực hành: 4 tiết 2 o Tự học (có hướng dẫn): 1 tiết Địa chỉ Khoa/Bộ môn phụ trách môn học: Công nghệ thông tin/Hệ thống thông tin - Địa chỉ: P903 nhà A2, Học viện CNBCVT, km 10 đường Nguyễn Trãi, Hà Đông - Điện thoại: 0438545604/ 0433515483 3. Mục tiêu của môn học - Kiến thức: Nắm được các mức trừu tượng hóa cơ sở dữ liệu, các mô hình cơ sở dữ liệu, các ngôn ngữ biểu diễn và xử lý dữ liệu, lý thuyết về cơ sở dữ liệu quan hệ, quy trình thiết kế cơ sở dữ liệu - Kỹ năng: Áp dụng các kiến thức vào việc thiết kế cơ sở dữ liệu, xây dựng các ứng dụng cơ sở dữ liệu - Thái độ, chuyên cần: Sinh viên cần lên lớp và tham gia các giờ thực hành đầy đủ. Tích cực thảo luận và làm bài tập trên lớp, cũng như tự học ở nhà để hoàn thành bài tập lớn. Mục tiêu chi tiết cho từng nội dung của môn học Nội dung Mục tiêu Bậc 1 Bậc 2 Bậc 3 Chương 1:Khái niệm chung về cơ sở dữ liệu Nắm được các khái niệm cơ bản Nắm được mô hình trừu tượng 3 lớp Nắm được khái niệm ngôn ngữ cơ sở dữ liệu Nắm được các bước thiết kế một cơ sở dữ liệu Một số hệ quản trị cơ sở dữ liệu phổ biến Hiểu được vai trò của mô hình 3 lớp, ngôn ngữ CSDL và các khái niệm cơ bản trong quá trình thiết Chương 2: Mô hình dữ liệu Nắm được các khái niệm cơ bản của mô hình thực thể liên kết và mô hình quan hệ Nắm được cách ánh xạ từ mô hình thực thể liên kết (mở rộng) sang mô hình quan hệ Biết cách thiết kế mô hình thực thể liên kết và mô hình quan hệ cho bài toán trong thực tế Chương 3: Ngôn ngữ truy vấn quan hệ Nắm được các phép toán của đại số quan hệ Nắm được cú pháp các câu lệnh SQL Biết cách chuyển đổi câu truy vấn từ đại số quan hệ sang câu lệnh SQL Biết cách sử dụng SQL để định nghĩa CSDL và thao tác dữ liệu Chương 4: Phụ thuộc hàm Nắm được các khái niệm chung liên quan tới phụ thuộc hàm: bao đóng, phủ, bảo toàn phụ thuộc hàm Nắm được cách sử dụng thuật toán để tìm bao đóng, phủ nhỏ nhất Nắm được cách kiểm tra bảo toàn phụ thuộc hàm Hiểu được tại sao lại cần các khái niệm bao đóng, phủ nhỏ nhất Biết cách xác định phụ thuộc hàm trong hệ CSDL thực thế 3 Chương 5: Chuẩn hóa dữ liệu Nắm được khái niệm các dạng chuẩn 1,2,3, Boye Codd Nắm được lý do tại sao cần chuẩn hóa dữ liệu và sự cần thiết bảo toàn thông tin và phụ thuộc hàm Nắm được cách kiểm tra CSDL quan hệ đã ở dạng 1NF, 2NF, 3NF, BCNF chưa Nắm được cách phân tách một quan hệ để đưa về dạng chuẩn Biết thiết kế một CSDL quan hệ ở dạng chuẩn 3NF hoặc BCNF 4. Tóm tắt nội dung môn học(khoảng 150 từ) Cung cấp những kiến thức cơ bản về cơ sở dữ liệu, các phương pháp tiếp cận và các nguyên tắc thiết kế các hệ cơ sở dữ liệu quan hệ. Mô hình hóa dữ liệu bằng kiến trúc logic và kiến trúc vật lý không tổn thất thông tin có bảo toàn phụ thuộc. Các phép toán cơ bản của ngôn ngữ thao tác dữ liệu trên các hệ cơ sở dữ liệu. 5. Nội dung chi tiết môn học (chỉ dừng lại ở 3 lớp: Chương, Mục và Tiểu mục) Chương 1 Khái niệm chung về cơ sở dữ liệu 1.1 Các khái niệm cơ bản 1.1.1 Cơ sở dữ liệu và hệ cơ sở dữ liệu 1.1.2 Hệ Quản trị dữ liệu và ưu nhược điểm 1.1.3 Dữ liệu và thông tin 1.2 Mô hình trừu tượng 3 lớp 1.3 Các ngôn ngữ cơ sở dữ liệu 1.4 Thiết kế cơ sở dữ liệu 1.4.1 Sự cần thiết 1.4.2 Các vai trò trong môi trường cơ sở dữ liệu 1.4.3 Các bước của quá trình thiết kế Chương 2 Mô hình dữ liệu 2.1 Mô hình thực thể liên kết 2.1.1 Các khái niệm cơ bản 2.1.2 Một số vấn đề cần quan tâm khi thiết kế mô hình thực thể liên kết 2.1.3 Mô hình thực thể liên kết mở rộng 2.2 Mô hình dữ liệu quan hệ 2.2.1 Các khái niệm cơ bản 2.2.2 Ánh xạ mô hình thực thể liên kết sang mô hình quan hệ Chương 3 Ngôn ngữ truy vấn quan hệ 3.1 Ngôn ngữ đại số quan hệ 3.1.1 Các phép toán cơ bản 3.1.2 Các phép toán bổ sung 3.1.3 Các truy vấn thực hành áp dụng các phép toán đại số quan hệ 4 3.2 Ngôn ngữ truy vấn SQL 3.2.1 Giới thiệu chung về SQL 3.2.2 Ngôn ngữ định nghĩa dữ liệu SQL 3.2.3 Ngôn ngữ thao tác dữ liệu SQL Chương 4 Phụ thuộc hàm 4.1 Các khái niệm cơ bản về phụ thuộc hàm 4.2 Bảo toàn phụ thuộc hàm 4.3 Khái niệm bao đóng 4.4 Phủ và sự tương đương của tập phụ thuộc hàm Chương 5 Chuẩn hóa dữ liệu 5.1 Sự cần thiết phải chuẩn hóa 5.2 Các dạng chuẩn hóa 5.3 Phân tách lược đồ quan hệ về các dạng chuẩn 5.4 Các thuật toán cho việc phân tách về dạng chuẩn 3 6. Học liệu 6.1 Học liệu bắt buộc: [1] Ramez Elmasri and Shamkant B. Navathe “ Fundamentals of Database Systems”, Fourth Edition. Pearson Addison Wesley, 2004 [2] Nguyễn Quỳnh Chi “Bài giảng Cơ sở dữ liệu”, lưu hành nội bộ cho sinh viên Học viện công nghệ bưu chính viễn thông, 2011 6.2 Học liệu tham khảo: [1] William Stallings, “ Data & Computer Communications”, Prentice Hall, New Jersey, Sixth Edition, 2000. [2] Michanel V. Mannino, “ Database Application Development & Design”, Published by McGaw-Hill /Irwin, New Yor.k, 2001. 7. Hình thức tổ chức dạy học 7.1 Lịch trình chung Nội dung Tổng số tiết (giờ TC) Hình thức tổ chức dạy học Lên lớp TN-TH Tự học/Tự nghiên cứu Lý thuyết Chữa bài tập/Thảo luận Nội dung 1: Khái niệm chung về cơ sở dữ liệu bao gồm hệ quản trị CSDL, kiến trúc, tổng quan các thành phần hệ cơ sở dữ liệu 2 2 Nội dung 2: Khái niệm chung về CSDL (tiếp) bao gồm thiết kế 2 2 5 CSDL, mô hình trừu tượng 3 lớp, các ngôn ngữ CSDL Nội dung 3: Quá trình thiết kế CSDL, mô hình thực thể liên kết 2 2 Nội dung 4: Một số vấn đề cần quan tâm khi thiết kế mô hình thực thể liên kết 2 2 Nội dung 5: Mô hình thực thể liên kết mở rộng 2 2 Nội dung 6: Bài tập về mô hình thực thể liên kết 2 2 Nội dung 7: Mô hình dữ liệu quan hệ 2 2 Nội dung 8: Kiểm tra giữa kỳ/Hướng dẫn bài tập lớn 2 2 Nội dung 9: Ngôn ngữ đại số quan hệ 2 2 Nội dung 10: Ngôn ngữ đại số quan hệ- phần 2 2 2 Nội dung 11: Bài tập về mô hình dữ liệu và đại số quan hệ 2 2 Nội dung 12: Phụ thuộc hàm 2 2 Nội dung 13: Chuẩn hóa- phần 1 2 2 Nội dung 14: Chuẩn hóa- phần 2 2 2 Nội dung 15: Chuẩn hóa- phần 3 2 2 Nội dung 16: Ngôn ngữ truy vấn có cấu trúc SQL – phần 1 2 2 Nội dung 17: Ngôn ngữ truy vấn có cấu trúc SQL – phần 2 2 2 Nội dung 18: Bài tập về ngôn ngữ SQL, phụ thuộc hàm và chuẩn hóa 2 2 Nội dung 19: Báo cáo bài tập lớn 2 2 Nội dung 20: Ôn tập và giải đáp 2 2 Tổng cộng: 40 32 8 Ghi chú: Mỗi nội dung (trừ Thí nghiệm, Thực hành) được bố trí để thực hiện trong thời gian là 2 tiết tín chỉ (2h tín chỉ), khi cần tính liên tục thì bố trí ở nội dung tiếp theo 7.2 Lịch trình tổ chức dạy học cụ thể (Bảng Lịch trình tổ chức chức dạy học cụ thể này được thiết kế cho từng nội dung ứng với 1 tuần học, cho đến hết môn học là 15 tuần) Tuần 1, Nội dung: Giới thiệu những khái niệm chung về cơ sở dữ liệu (CSDL) 6 Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Khái niệm về CSDL, hệ quản trị CSDL, dữ liệu, môi trường CSDL, mô hình trừu tượng 3 lớp, giới thiệu ngôn ngữ CSDL. Đọc sách trước giờ lên lớp quyển 1 chương 1,2. Đọc trước slides và bài giảng bài 1, 2 Hình thành nhóm để chuẩn bị làm bài tập lớn Tuần 2, Nội dung: Giới thiệu các bước xây dựng một CSDL và mô hình thực thể liên kết Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Các bước xây dựng CSDL Mô hình thực thể liên kết (thuộc tính, thực thể, liên kết, các ràng buộc lực lượng, khóa, ) Một số vấn đề cần quan tâm khi thiết kế mô hình thực thể liên kết Đọc sách trước giờ lên lớp quyển 1 chương 3. Đọc trước slides và bài giảng bài 3,4 Mỗi nhóm tự tìm hiểu yêu cầu của hệ thống CSDL cho bài tập lớn (chủ đề) Tuần 3, Nội dung: Giới thiệu mô hình thực thể liên kết mở rộng Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 2 Mô hình thực thể liên kết mở rộng: cụ thể hóa, tổng quát hóa, kế thừa thuộc tính, tích hợp, quan hệ nhiều ngôi, sự liên quan tới UML, ràng buộc toàn vẹn tham chiếu Đọc sách trước giờ lên lớp quyển 1 chương 4. Đọc trước slides và bài giảng bài 5 Bài tập/Chữa bài tập/Thảo luận 2 Thảo luận và chữa bài tập phần mô hình thực thể liên kết Giải bài tập trước ở nhà và Chuẩn bị câu hỏi để thảo luận Tuần 4, Nội dung: Giới thiệu mô hình dữ liệu quan hệ và hướng dẫn làm bài tập lớn Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Mô hình quan hệ, ánh xạ từ mô hình thực thể liên kết sang mô hình quan hệ Kiểm tra giữa kỳ Đọc sách trước giờ lên lớp quyển 1 chương 5 và 7. Đọc trước slides và 7 Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Hướng dẫn làm bài tập lớp theo nhóm bài giảng bài 6 Hoàn thành bước 1 của bài tập lớn. Tuần 5, Nội dung: Giới thiệu ngôn ngữ đại số quan hệ Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Các phép toán cơ bản của đại số quan hệ Các phép toán bổ sung Truy vấn sử dụng đại số quan hệ Đọc sách trước giờ lên lớp quyển 1 chương 6. Đọc trước slides và bài giảng bài 7, 8. Hoàn thành bước 2 của bài tập lớn. Tuần 6, Nội dung: Bài tập và giới thiệu phụ thuộc hàm Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 2 Phụ thuộc hàm: bảo toàn,bao đóng, phủ tương đương, phủ tối thiểu Đọc sách trước giờ lên lớp quyển 1 chương 10 . Đọc trước slides và bài giảng bài 9 Hoàn thành bước 3 của bài tập lớn. Bài tập/Chữa bài tập/Thảo luận 2 Thảo luận và chữa bài tập về mô hình quan hệ và đại số quan hệ Giải bài tập trước ở nhà và Chuẩn bị câu hỏi để thảo luận Tuần 7, Nội dung: Giới thiệu chuẩn hóa Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Lý do cần chuẩn hóa Chuẩn hóa dựa trên khóa chính: xác định khóa chính bằng thuật toán Dạng Chuẩn 1 Dạng chuẩn 2 Dạng chuẩn 3 Dạng chuẩn Boye-Codd Đọc sách trước giờ lên lớp quyển 1 chương 10 và 11. Đọc trước slides và bài giảng bài 10, 11 Hoàn thành bước 4 của bài tập lớn. Tuần 8, Nội dung: Giới thiệu chuẩn hóa tiếp theo, giới thiệu ngôn ngữ truy vấn có cấu trúc SQL 8 Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 4 Các thuật toán phân tách để đưa về dạng chuẩn 3 Giới thiệu ngôn ngữ SQL: định nghĩa dữ liệu,tạo bảng, thao tác dữ liệu, câu lệnh SELECT con Đọc sách trước giờ lên lớp quyển 1 chương 11. Đọc trước slides và bài giảng bài 12, 13. Hoàn thành bước 5 của bài tập lớn. Tuần 9, Nội dung: Giới thiệu ngôn ngữ truy vấn có cấu trúc SQL, bài tập Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 2 Giới thiệu ngôn ngữ SQL: các phép kết nối, đệ quy, toán tử đặc biệt, khung nhìn,truy vấn con và tương hỗ Đọc sách trước giờ lên lớp quyển 1 chương 9. Đọc trước slides và bài giảng bài 14 Bài tập/Chữa bài tập/Thảo luận 2 Thảo luận và chữa bài tập về phụ thuộc hàm, chuẩn hóa, SQL Giải bài tập trước ở nhà và Chuẩn bị câu hỏi để thảo luận Thực hành/Thí nghiệm 4 Tại địa điểm: … Tuần 10, Nội dung: Giới thiệu ngôn ngữ đại số quan hệ Hình thức tổ chức dạy học Thời gian (tiết TC) Nội dung chính Yêu cầu đối với sinh viên Ghi chú Lý thuyết 2 Ôn tập và giải đáp Chuẩn bị các câu hỏi để thảo luận Bài tập/Chữa bài tập/Thảo luận 2 Sinh viên báo cáo kết quả bài tập lớp, thảo luận và chữa trên lớp Hoàn thành bài tập lớn và chuẩn bị báo cáo trên lớp Tự học/Tự nghiên cứu Tự ôn tập để chuẩn bị thi cuối kỳ 8. Chính sách đối với môn học và các yêu cầu khác - Bài tập lớn phải làm theo nhóm từ 3-4 người và cần nộp đúng hạn. Nếu không đúng hạn sẽ bị 0 điểm; - Thiếu 1 điểm thành phần (bài tập lớn, bài kiểm tra giữa kỳ), hoặc nghỉ quá 20% tổng số giờ của môn học, không được thi hết môn. 9. Phương pháp, hình thức kiểm tra – đánh giá kết quả học tập 9.1 Kiểm tra – đánh giá định kỳ Hình thức kiểm tra Tỷ lệ đánh giá Đặc điểm đánh giá 9 (Tham khảo dưới đây) - Tham gia học tập trên lớp (đi học đầy đủ, tích cực thảo luận) 10% Cá nhân - Bài tập lớn theo nhóm 20% Nhóm - Kiểm tra giữa kỳ 10% Cá nhân - Kiểm tra cuối kỳ 60% Cá nhân 9.2 Nội dung và Tiêu chí đánh giá các bài tập Căn cứ vào Phương án lập kế hoạch giảng dạy trong Khung chương trình đào tạo đã ban hành, sau các nội dung giảng dạy lý thuyết là phần giao Bài tập về nhà cho sinh viên thực hiện. Tại giờ chữa Bài tập, Thảo luận hoặc Hoạt động nhóm: Giảng viên thực hiện chữa Bài tập trên hoặc kiểm tra đánh giá quá trình tự học ở nhà của sinh viên. Việc kiểm tra đánh giá quá trình học tập được thực hiện tại thời gian chữa bài tập/thảo luận. Các loại bài tập Tiêu chí đánh giá - Bài tập lớn: thiết kế và cài đặt một hệ cơ sở dữ liệu - Thực hiện xây dựng hệ cơ sở dữ liệu đầy đủ các bước như đã hướng dẫn - Thiết kế đúng - Biết sử dụng một hệ quản trị Cơ sở dữ liệu - Cài đặt được một số chức năng cơ bản của hệ thống như nhập liệu, truy vấn, tìm kiếm (có tham số hoặc không), báo cáo - Viết báo cáo mô tả các công việc nhóm đã thực hiện một cách rõ ràng, mạch lạc. - Kiểm tra trong kỳ, cuối kỳ - Nắm vững kiến thức môn học; - Trả lời đúng các câu hỏi và bài tập DUYỆT Trưởng Bộ môn Giảng viên (Chủ trì biên soạn đề cương) 10 . cơ bản 1.1.1 Cơ sở dữ liệu và hệ cơ sở dữ liệu 1.1.2 Hệ Quản trị dữ liệu và ưu nhược điểm 1.1.3 Dữ liệu và thông tin 1.2 Mô hình trừu tượng 3 lớp 1.3 Các ngôn ngữ cơ sở dữ liệu 1.4 Thiết kế cơ. môn học - Kiến thức: Nắm được các mức trừu tượng hóa cơ sở dữ liệu, các mô hình cơ sở dữ liệu, các ngôn ngữ biểu diễn và xử lý dữ liệu, lý thuyết về cơ sở dữ liệu quan hệ, quy trình thiết kế cơ. về môn học - Tên môn học: Cơ sở dữ liệu - Tên tiếng Anh: Database system - Mã môn học: INT 1313 - Số tín chỉ (TC): 3 - Môn học: Bắt buộc ☐ Lựa chọn☐ - Các môn học tiên quyết: Nhập môn Logic (Môn