GIÁO TRÌNH CƠ SỞ DỮ LIỆU 1 – KHOA CÔNG NGHỆ THÔNG TIN (TRƯỜNG ĐẠI HỌC PHAN THIẾT)
Tổng quan về giáo trình
Giáo trình Cơ sở dữ liệu 1 do Khoa Công nghệ Thông tin – Trường Đại học Phan Thiết biên soạn dưới dạng tài liệu lưu hành nội bộ, phục vụ công tác giảng dạy và học tập cho sinh viên chuyên ngành Công nghệ Thông tin ở trình độ đại học. Trong chương trình đào tạo kỹ sư và cử nhân công nghệ thông tin, môn học Cơ sở dữ liệu 1 giữ vị trí nền tảng, cung cấp các nguyên lý cơ bản về tổ chức, lưu trữ và thao tác dữ liệu trên máy tính trước khi sinh viên tiếp cận các học phần nâng cao hoặc các hệ quản trị cơ sở dữ liệu chuyên sâu.
Mục tiêu học tập (learning outcomes) của giáo trình hướng đến việc trang bị cho người học:
- Nắm vững các khái niệm cơ bản về hệ cơ sở dữ liệu, phân biệt giữa cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu (DBMS) và hệ cơ sở dữ liệu.
- Nắm bắt và sử dụng thành thạo mô hình thực thể - liên kết (ER) cùng mô hình thực thể - liên kết mở rộng (EER) để phân tích, mô hình hóa dữ liệu từ thế giới thực.
- Hiểu rõ cấu trúc hình thức của mô hình quan hệ, các ràng buộc toàn vẹn và các phép toán đại số quan hệ.
- Vận dụng lý thuyết phụ thuộc hàm, các thuật toán thiết kế và kỹ thuật chuẩn hóa dữ liệu từ dạng chuẩn 1 (1NF) đến dạng chuẩn 5 (5NF) nhằm xây dựng lược đồ cơ sở dữ liệu quan hệ tối ưu, tránh dư thừa và dị thường cập nhật.
Cấu trúc giáo trình được xây dựng theo trình tự logic 4 chương, đi từ mức quan niệm trừu tượng (Conceptual Level), qua mức logic (Logical Level), đến kỹ thuật tối ưu hóa thiết kế. Điểm đặc sắc của giáo trình là sự kết hợp chặt chẽ giữa cơ sở toán học hình thức (lý thuyết tập hợp, logic vị từ bậc nhất của Ted Codd) với các mô hình ví dụ thực tế xuyên suốt như cơ sở dữ liệu "TRƯỜNG", "CÔNGTY" và "THƯ VIỆN".
Nội dung kiến thức cốt lõi
Các chương/chủ đề chính
Giáo trình được cấu trúc thành 4 chương chính với tiến trình học tập chặt chẽ:
-
Chương I: Các khái niệm cơ bản về hệ cơ sở dữ liệu (Trang 7 - 22)
Chương này định nghĩa cơ sở dữ liệu, các tính chất của cơ sở dữ liệu ("thế giới nhỏ" - miniworld, tính liên kết logic, mục đích xác định), các chức năng của Hệ quản trị cơ sở dữ liệu (DBMS) và so sánh giải pháp cơ sở dữ liệu với hệ thống tệp (file system) truyền thống. Nội dung đồng thời phân loại các mô hình dữ liệu (mức quan niệm, mức thể hiện/logic, mức vật lý), phân biệt lược đồ (intension) và trạng thái (extension/snapshot), phân loại các nhóm người liên quan (DBA, Database Designer, End User, System Analyst, Application Programmer...) cũng như giới thiệu ngôn ngữ DDL, DML và các giao diện người dùng.
-
Chương II: Mô hình thực thể - liên kết (Trang 23 - 47)
Nội dung tập trung vào quy trình thiết kế cơ sở dữ liệu quan niệm. Chương trình bày các thành phần cốt lõi của mô hình ER: thực thể, kiểu thực thể, tập thực thể; phân loại thuộc tính (đơn, phức hợp, đơn trị, đa trị, lưu trữ, suy diễn, null, phức tạp); thuộc tính khóa và khóa phức hợp; kiểu liên kết, cấp liên kết, tên vai trò, liên kết đệ quy; các ràng buộc cấu trúc (tỷ số lực lượng 1:1, 1:N, M:N và ràng buộc tham gia toàn bộ/bộ phận); kiểu thực thể yếu và khóa bộ phận. Phần tiếp theo mở rộng sang mô hình EER với các khái niệm: lớp cha/lớp con, liên kết IS_A, thừa kế kiểu, quá trình chuyên biệt hóa (specialization), tổng quát hóa (generalization), phân cấp/lưới chuyên biệt, kiểu hợp (union type/category), và các ràng buộc rời rạc (disjoint 'd') hoặc chồng chéo (overlap 'o').
-
Chương III: Mô hình quan hệ, các ràng buộc quan hệ và đại số quan hệ (Trang 48 - 85)
Giới thiệu mô hình do Ted Codd đề xuất năm 1970. Chương định nghĩa hình thức miền giá trị ($D$), thuộc tính ($A_i$), lược đồ quan hệ $R(A_1, A_2, \dots, A_n)$, cấp quan hệ, bộ dữ liệu (n-bộ), trạng thái quan hệ $r(R)$ và các đặc trưng quan hệ (không thứ tự giữa các bộ, tính nguyên tử của giá trị). Chương đi sâu vào các ràng buộc: miền, khóa, null, toàn vẹn thực thể, toàn vẹn tham chiếu và khóa ngoài; các phép toán cập nhật (Insert, Delete, Update); tập hợp các phép toán đại số quan hệ cơ bản và mở rộng (RENAME, Union, Intersection, Difference, Cartesian Product, Projection, Selection, Join, Division, hàm nhóm/phép nhóm, khép kín đệ quy, outer join, outer union); cùng quy tắc chuyển đổi lược đồ ER sang lược đồ quan hệ.
-
Chương IV: Phụ thuộc hàm và chuẩn hóa cơ sở dữ liệu quan hệ, các thuật toán thiết kế cơ sở dữ liệu quan hệ (Trang 86 - 126)
Trình bày các nguyên tắc thiết kế lược đồ, phân tích hiện tượng dư thừa thông tin, dị thường cập nhật và sinh bộ giả. Chương thiết lập định nghĩa hình thức về phụ thuộc hàm (FD), hệ quy tắc suy diễn (tiên đề Armstrong), tính tương đương và tập phụ thuộc hàm tối thiểu. Chương phân tích chi tiết các dạng chuẩn dựa trên khóa chính: 1NF, 2NF, 3NF, BCNF (Boyce-Codd); đồng thời mở rộng sang các thuật toán thiết kế bảo toàn phụ thuộc, tách kết nối không mất mát thông tin (lossless join), phụ thuộc đa trị (MVD) với dạng chuẩn 4 (4NF), và phụ thuộc nối (JD) với dạng chuẩn 5 (5NF/PJNF).
Kiến thức nền tảng được xây dựng
Giáo trình thiết lập hệ thống lý thuyết dựa trên các cơ sở khoa học:
- Lý thuyết toán học hình thức: Ứng dụng lý thuyết tập hợp, tích Đề-các ($dom(A_1) \times \dots \times dom(A_n)$) và logic vị từ bậc nhất để mô hình hóa dữ liệu.
- Nguyên lý trừu tượng hóa dữ liệu: Thiết lập ranh giới rõ ràng giữa lược đồ (định nghĩa cấu trúc/siêu dữ liệu trong từ điển dữ liệu) và trạng thái dữ liệu (ảnh snapshot thực tế tại một thời điểm).
- Nguyên lý độc lập dữ liệu: Duy trì sự độc lập giữa chương trình ứng dụng và cấu trúc lưu trữ vật lý thông qua sự hỗ trợ của từ điển dữ liệu (metadata/catalog).
- Lý thuyết phụ thuộc và phân rã: Hệ tiên đề Armstrong, nguyên lý bảo toàn phụ thuộc hàm và phép nối không mất mát thông tin trong tối ưu hóa thiết kế lược đồ quan hệ.
Kỹ năng phát triển
Thông qua nội dung của 4 chương, giáo trình rèn luyện cho người học các kỹ năng chuyên môn:
- Kỹ năng phân tích và mô hình hóa: Chuyển đổi các mô tả yêu cầu thực tế (như hoạt động quản lý công ty, quản lý đào tạo trường học) thành biểu đồ quan niệm ER/EER hoàn chỉnh với đầy đủ ràng buộc lực lượng và ràng buộc tham gia.
- Kỹ năng thiết kế logic: Vận dụng hệ thống quy tắc để ánh xạ chính xác từ mô hình thực thể sang các quan hệ, xác định đúng khóa chính, khóa ngoại và các ràng buộc toàn vẹn tham chiếu.
- Kỹ năng truy vấn đại số quan hệ: Viết và tối ưu hóa các biểu thức đại số quan hệ để trích xuất dữ liệu, sử dụng cả phép toán cơ bản lẫn phép toán nâng cao (phép nhóm, outer join).
- Kỹ năng chuẩn hóa và tối ưu hóa cấu trúc: Tính toán bao đóng của tập thuộc tính, tìm khóa, tìm phủ tối thiểu của tập phụ thuộc hàm và phân rã lược đồ về dạng chuẩn BCNF, 3NF, 4NF nhằm triệt tiêu các dị thường khi thêm, xóa, sửa dữ liệu.
Phương pháp giảng dạy và học tập
Giáo trình áp dụng phương pháp sư phạm tiếp cận theo quy trình kỹ thuật chuẩn của vòng đời phát triển cơ sở dữ liệu:
Bài tập và ca nghiên cứu thực tế (Case studies)
Nội dung lý thuyết được minh họa và kiểm chứng qua các ca nghiên cứu thực tế được xây dựng chi tiết:
- Mô hình CSDL "CÔNGTY": Dùng để minh họa chi tiết quá trình thiết kế ER/EER. Bài toán bao gồm các thực thể
NHÂNVIÊN (thuộc tính phức hợp Họtên, đa trị Bằngcấp), ĐƠNVỊ, DỰÁN, và thực thể yếu CON (ràng buộc tham gia toàn bộ, khóa bộ phận); các liên kết Quảnlý (1:1), Làmlàmviệccho (N:1), Làmlàmviệctrên (M:N, có thuộc tính Sốgiờ), Kiểmsoát (1:N) và liên kết đệ quy Giámsát (1:N).
- Mô hình CSDL "TRƯỜNG": Dùng để minh họa cấu trúc bảng quan hệ, bao gồm 5 bảng:
SINHVIÊN(MãsốSV, HọtênSV, Lớp, Chuyênngành), MÔNHỌC(MãsốMH, TênMH, Sốđvht, Khoa), HỌCPHẦN(MãsốHP, MãsốMH, Họckỳ, Năm, Têngiáoviên), ĐIỂM(MãsốSV, MãsốHP, Điểm), và BIẾTTRƯỚC(MãsốMH, MãsốMHbiếttrước).
- Bài tập ứng dụng CSDL "THƯ VIỆN": Cung cấp các đặc tả về chi nhánh thư viện, ấn bản sách, tác giả, nhà xuất bản, người mượn và sự kiện mượn trả để người học tự thiết kế lược đồ ER hoàn chỉnh.
Đánh giá và hướng dẫn tự học
- Hệ thống câu hỏi ôn tập: Cuối mỗi chương đều có danh mục câu hỏi lý thuyết tập trung vào việc định nghĩa khái niệm, phân biệt các thành phần (như phân biệt thực thể - kiểu thực thể - tập thực thể; phân biệt thuộc tính và tập giá trị; phân biệt chuyên biệt hóa và tổng quát hóa).
- Hệ thống bài tập thực hành: Cung cấp bài toán thiết kế hoàn chỉnh từ mô tả văn bản sang sơ đồ ER, chuyển đổi sơ đồ sang quan hệ, và các bài toán chuẩn hóa dữ liệu.
- Hướng dẫn tự học: Giáo trình khuyến nghị người học nắm chắc các định nghĩa toán học ở Chương I và Chương III, thực hành tự vẽ lại các biểu đồ ER của mô hình "CÔNGTY", giải các bài tập "TRƯỜNG", "THƯ VIỆN" ở Chương II, sau đó áp dụng lý thuyết thuật toán ở Chương IV để kiểm tra tính toàn vẹn của lược đồ.
Điểm nổi bật và cập nhật
Giáo trình cung cấp các nội dung kỹ thuật thể hiện rõ sự khác biệt giữa các thế hệ quản lý dữ liệu và tích hợp các lý thuyết mô hình hóa nâng cao:
- So sánh kỹ thuật giữa Hệ thống tệp và Hệ quản trị CSDL: Giáo trình chỉ rõ những điểm hạn chế cốt lõi của giải pháp tệp tin truyền thống (sự dư thừa dữ liệu gây lãng phí bộ nhớ và sai lệch cập nhật; sự phụ thuộc chặt giữa chương trình ứng dụng và cấu trúc tệp vật lý). Từ đó, giáo trình làm rõ các đặc trưng giải quyết vấn đề của DBMS: tính tự mô tả qua từ điển dữ liệu (catalog/metadata), sự độc lập dữ liệu - chương trình, hỗ trợ đa khung nhìn (views) và cơ chế kiểm tra cạnh tranh khi nhiều người dùng truy cập đồng thời.
- Tích hợp mô hình mở rộng EER: Bên cạnh mô hình ER cổ điển, giáo trình bổ sung các cấu trúc mô hình hóa nâng cao gồm kiểu liên kết
IS_A, cơ chế thừa kế thuộc tính và liên kết, phân biệt rõ quá trình Chuyên biệt hóa (Specialization - phân rã từ trên xuống) và Tổng quát hóa (Generalization - tổng hợp từ dưới lên), phân cấp chuyên biệt (thừa kế đơn) và lưới chuyên biệt (đa thừa kế dẫn đến kiểu hợp/category), cùng các ràng buộc chặt chẽ như rời rạc (d) và chồng chéo (o).
- Bao quát đầy đủ các dạng chuẩn nâng cao: Không dừng lại ở các dạng chuẩn cơ bản (1NF, 2NF, 3NF), giáo trình trình bày đầy đủ định nghĩa và thuật toán cho Dạng chuẩn Boyce-Codd (BCNF), Dạng chuẩn 4 (4NF dựa trên phụ thuộc đa trị - MVD và các quy tắc suy diễn cho MVD), và Dạng chuẩn 5 (5NF/PJNF dựa trên phụ thuộc nối - JD).
- Liên hệ các hướng phát triển cơ sở dữ liệu: Mở đầu giáo trình đã chỉ ra sự tiến hóa từ cơ sở dữ liệu truyền thống (chủ yếu là văn bản và số liệu) sang các ứng dụng chuyên biệt hiện đại như cơ sở dữ liệu đa phương tiện (ảnh, phim, tiếng nói), hệ thống thông tin địa lý (GIS), kho dữ liệu (Data Warehouse) và hệ thống phân tích trực tuyến (OLAP), cơ sở dữ liệu thời gian thực và kỹ thuật tìm kiếm CSDL trên môi trường Web.
Đối tượng sử dụng giáo trình
- Sinh viên chuyên ngành: Sinh viên năm thứ hai hoặc năm thứ ba ngành Công nghệ Thông tin, Kỹ thuật Phần mềm, Hệ thống Thông tin tại Trường Đại học Phan Thiết và các cơ sở đào tạo đại học kỹ thuật khác.
- Điều kiện tiên quyết (Prerequisites): Người học cần hoàn thành các học phần Toán rời rạc (nắm vững lý thuyết tập hợp, quan hệ, tích Đề-các, logic vị từ), Cấu trúc dữ liệu và Giải thuật, cùng kiến thức cơ bản về một ngôn ngữ lập trình bậc cao (thế hệ thứ 3).
- Giảng viên đại học: Sử dụng giáo trình làm đề cương giảng dạy chi tiết cho học phần Cơ sở dữ liệu 1; làm cơ sở biên soạn bài giảng lý thuyết, thiết kế bài tập lớn và xây dựng ngân hàng đề thi đánh giá năng lực thiết kế dữ liệu.
- Tự học và tham khảo kỹ thuật: Kỹ sư phần mềm, chuyên viên phân tích hệ thống có thể sử dụng giáo trình như tài liệu tra cứu chuẩn mực về quy tắc chuyển đổi ER sang mô hình quan hệ, hệ tiên đề Armstrong và các thuật toán phân rã lược đồ không mất mát thông tin.
Câu hỏi thường gặp (FAQ)
1. Giáo trình này phù hợp với ai?
Giáo trình được biên soạn chuyên biệt cho sinh viên đại học khối ngành Công nghệ Thông tin đang theo học học phần nền tảng về cơ sở dữ liệu, đồng thời là tài liệu tham khảo phù hợp cho các lập trình viên muốn củng cố nền tảng toán học và kỹ thuật thiết kế cơ sở dữ liệu quan hệ.
2. Cần kiến thức nền nào để học?
Người học cần có kiến thức cơ bản về Toán rời rạc (đặc biệt là lý thuyết tập hợp, ánh xạ, phép toán logic), hiểu biết về cấu trúc dữ liệu và có tư duy lập trình cơ bản để tiếp cận tốt các nội dung về đại số quan hệ và thuật toán chuẩn hóa.
3. Điểm khác biệt của giáo trình này so với các tài liệu khác?
Giáo trình tập trung vào bản chất lý thuyết toán học hình thức và quy trình thiết kế cơ sở dữ liệu chuẩn mực (từ phân tích quan niệm ER/EER đến đại số quan hệ và chuẩn hóa 1NF - 5NF), thay vì chỉ thuần túy hướng dẫn sử dụng cú pháp của một phần mềm hay hệ quản trị cơ sở dữ liệu thương mại cụ thể.
4. Làm sao để tự học giáo trình này hiệu quả?
Người học nên học tuần tự từ Chương I đến Chương IV, ghi chép và phân tích kỹ các ví dụ mẫu (như CSDL "TRƯỜNG", "CÔNGTY"), tự làm lại toàn bộ hệ thống câu hỏi ôn tập lý thuyết và bài tập thiết kế mô hình CSDL "THƯ VIỆN" được cung cấp ở cuối mỗi chương.
5. Có tài liệu bổ trợ nào kèm theo?
Giáo trình cung cấp hệ thống câu hỏi ôn tập, các bài tập thiết kế tình huống thực tế cuối mỗi chương, đồng thời định hướng sinh viên tham khảo thêm các tài liệu nghiên cứu chuyên sâu về mô hình dữ liệu hướng đối tượng (tài liệu tham khảo [1], [2] được dẫn chiếu trong Chương I).
Kết luận
Giáo trình Cơ sở dữ liệu 1 của Khoa Công nghệ Thông tin – Trường Đại học Phan Thiết là tài liệu học thuật hoàn chỉnh, cung cấp toàn diện các nguyên lý cốt lõi của công nghệ cơ sở dữ liệu quan hệ. Giá trị trọng tâm của tài liệu nằm ở việc liên kết chặt chẽ giữa cơ sở lý thuyết toán học (mô hình quan hệ của Ted Codd, hệ tiên đề Armstrong, lý thuyết chuẩn hóa) với phương pháp luận thiết kế hệ thống dữ liệu thực tế.
Lộ trình học tập khuyến nghị xuyên suốt tài liệu:
- Nắm vững kiến trúc DBMS, vai trò người dùng và bản chất siêu dữ liệu (Chương I).
- Xây dựng lược đồ quan niệm bằng mô hình ER và EER (Chương II).
- Ánh xạ sang mô hình quan hệ và thao tác dữ liệu bằng đại số quan hệ (Chương III).
- Chuẩn hóa và tối ưu hóa lược đồ quan hệ bằng phụ thuộc hàm và các thuật toán phân rã (Chương IV).
Để mở rộng kiến thức, người học được khuyến khích nghiên cứu tiếp các tài liệu chuyên khảo về mô hình dữ liệu hướng đối tượng và các học phần thực hành hệ quản trị cơ sở dữ liệu chuyên sâu tiếp theo trong chương trình đào tạo.