Tổng quan về giáo trình

Giáo trình Cơ sở dữ liệu do Cao Thị Nhận và Nguyễn Thị Thanh Bình biên soạn, được Khoa Công nghệ Thông tin – Trường Đại học Đà Lạt phát hành năm 2010 với dung lượng 109 trang. Trong chương trình đào tạo cử nhân ngành Công nghệ Thông tin theo hệ thống tín chỉ, đây là học phần cơ sở ngành bắt buộc, đóng vai trò bản lề nhằm trang bị hệ thống lý thuyết nền tảng về lưu trữ, quản lý và khai thác dữ liệu trước khi sinh viên tiếp cận các học phần nâng cao như Hệ quản trị cơ sở dữ liệu, Phân tích thiết kế hệ thống thông tin, hay Lập trình ứng dụng cơ sở dữ liệu.

Mục tiêu học tập của giáo trình tập trung vào việc trang bị cho người học:

  • Khả năng phân tích và mô hình hóa dữ liệu thực tế bằng mô hình thực thể kết hợp (Entity-Relationship Model).
  • Kỹ thuật chuyển đổi lược đồ quan niệm sang mô hình dữ liệu quan hệ (Relational Data Model).
  • Tư duy logic hình thức để biểu diễn các yêu cầu truy vấn thông qua ngôn ngữ đại số quan hệ, ngôn ngữ tân từ và ngôn ngữ truy vấn SQL.
  • Phương pháp luận khoa học trong việc phân tích phụ thuộc hàm, xác định khóa và chuẩn hóa lược đồ quan hệ nhằm tối ưu hóa cấu trúc cơ sở dữ liệu.

Về mặt cấu trúc, tài liệu được tổ chức thành 8 chương theo mạch sư phạm tuyến tính chặt chẽ: bắt đầu từ các khái niệm tổng quan và mô hình quan niệm thế giới thực, tiến đến mô hình logic quan hệ, đào sâu các ngôn ngữ thao tác dữ liệu, và kết thúc bằng lý thuyết toán học về chuẩn hóa. Đ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ừ, hệ tiên đề Armstrong) với các bài toán mô hình hóa thực tế mang tính nhất quán xuyên suốt tài liệu.


Nội dung kiến thức cốt lõi

+-------------------------------------------------------------------------+
|                  TIẾN TRÌNH PHÁT TRIỂN KIẾN THỨC CỐT LÕI               |
+-------------------------------------------------------------------------+
| [Chương 1]   Khái niệm nền tảng & Kiến trúc 3 mức trừu tượng            |
|                                    ↓                                    |
| [Chương 2]   Mô hình thực thể kết hợp (E-R Model)                       |
|                                    ↓                                    |
| [Chương 3]   Mô hình dữ liệu quan hệ & Quy tắc chuyển đổi từ E-R        |
|                                    ↓                                    |
| [Chương 4-6] Ngôn ngữ truy vấn: Đại số quan hệ → Tân từ → Ngôn ngữ SQL |
|                                    ↓                                    |
| [Chương 7-8] Phụ thuộc hàm, Ràng buộc toàn vẹn & Thuật toán chuẩn hóa   |
+-------------------------------------------------------------------------+

Các chương/chủ đề chính

Cấu trúc nội dung của giáo trình bao gồm 8 chương với các chủ đề chuyên sâu:

  • Chương 1: Giới thiệu chung: Phân tích hạn chế của hệ thống tập tin truyền thống (dư thừa, không nhất quán, khó truy xuất, vấn đề tranh chấp và an toàn dữ liệu). Giới thiệu định nghĩa CSDL, hệ quản trị CSDL (DBMS), kiến trúc 3 mức trừu tượng của dữ liệu (mức trong/vật lý, mức quan niệm/logic, mức ngoài/khung nhìn) và tính độc lập dữ liệu. Khái quát lịch sử phát triển của các mô hình dữ liệu: mô hình mạng (Honeywell 1964–1965), mô hình phân cấp (IBM và North American Rockwell 1965), mô hình quan hệ (Edgar F. Codd), mô hình thực thể kết hợp (Peter Pin-Shan Chen 1976) và mô hình hướng đối tượng (cuối thập niên 1980).
  • Chương 2: Mô hình thực thể kết hợp: Trình bày mô hình E-R (Peter Pin-Shan Chen). Định nghĩa thực thể, tập thực thể, các loại thuộc tính (đơn, kết hợp, rỗng/null, suy ra); mối kết hợp và bản số (min, max); khóa của tập thực thể và khóa của mối kết hợp; mối kết hợp tự thân; khái niệm chuyên biệt hóa và tổng quát hóa; tập thực thể mạnh, tập thực thể yếu và khóa bộ phận.
  • Chương 3: Mô hình dữ liệu quan hệ: Xây dựng khái niệm thuộc tính, miền giá trị, quan hệ $n$-ngôi, bộ giá trị (tuple), lược đồ quan hệ, siêu khóa, khóa đề nghị, khóa chính và khóa ngoại. Định nghĩa ràng buộc toàn vẹn và các thao tác cơ bản (thêm, xóa, sửa). Thiết lập thuật toán chuyển đổi lược đồ E-R sang lược đồ quan hệ (xử lý chuyên biệt hóa, tập thực thể mạnh, tập thực thể yếu, mối kết hợp $1:1$, $1:n$, $n:n$, và nhập các quan hệ cùng khóa).
  • Chương 4, 5 và 6: Hệ thống các ngôn ngữ truy vấn:
    • Chương 4 (Ngôn ngữ đại số quan hệ): Trình bày các phép toán tập hợp (hợp, giao, trừ, tích Descartes, phép chia); các phép toán quan hệ (chọn $\sigma$, chiếu $\pi$, gán $\leftarrow$, đổi tên $\rho$); các biến thể phép kết nối (theta join, kết bằng, kết tự nhiên, kết nối trong, kết nối ngoài trái/phải); hàm kết hợp (Avg, Min, Max, Sum, Count) và gom nhóm.
    • Chương 5 (Ngôn ngữ tân từ): Giới thiệu phép tính vị từ có biến là bộ (TRC) và biến là miền giá trị (DRC) cùng các lượng từ tồn tại ($\exists$) và với mọi ($\forall$).
    • Chương 6 (Ngôn ngữ truy vấn SQL): Trình bày cú pháp khai báo cấu trúc dữ liệu (DDL), thao tác cập nhật dữ liệu (DML), các kỹ thuật truy vấn lồng, gom nhóm và kết hợp dữ liệu.
  • Chương 7 & 8: Lý thuyết phụ thuộc hàm và chuẩn hóa:
    • Chương 7: Trình bày định nghĩa phụ thuộc hàm, hệ luật dẫn Armstrong, thuật toán tìm bao đóng của tập thuộc tính, bài toán thành viên, thuật toán tìm phủ tối thiểu, thuật toán tìm khóa và phân loại các ràng buộc toàn vẹn.
    • Chương 8: Phân tích các dạng chuẩn (1NF, 2NF, 3NF, BCNF), thuật toán kiểm tra dạng chuẩn, khái niệm phân rã bảo toàn thông tin và phân rã bảo toàn phụ thuộc hàm; thuật toán thiết kế CSDL bằng cách phân rã sang dạng chuẩn 3NF và BCNF.

Kiến thức nền tảng được xây dựng

  • Lý thuyết hình thức về mô hình quan hệ: Dựa trên nền tảng lý thuyết tập hợp, đại số quan hệ và tích Descartes của Edgar F. Codd.
  • Hệ thống logic toán học: Xây dựng tư duy truy vấn dựa trên logic vị từ bậc một (First-order Predicate Calculus) thông qua phép tính bộ và phép tính miền giá trị.
  • Hệ tiên đề Armstrong: Cung cấp nền tảng toán học với các quy tắc phản xạ, tăng trưởng, bắc cầu (và các quy tắc phái sinh: hợp, phân rã, bắc cầu giả) để phục vụ cho các chứng minh và thuật toán phân tích phụ thuộc hàm.
  • Mô hình kiến trúc ANSI/SPARC 3 mức: Phân định rõ ràng ranh giới giữa biểu diễn vật lý, biểu diễn logic và các khung nhìn người dùng, giải thích cơ chế độc lập dữ liệu.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Xây dựng câu lệnh DDL/DML trong SQL; biểu diễn các biểu thức đại số quan hệ phức tạp; thực thi các thuật toán tìm bao đóng tập thuộc tính $X^+$, thuật toán tìm phủ tối thiểu $F_{min}$, và thuật toán tìm tập tất cả các khóa của lược đồ quan hệ.
  • Kỹ năng phân tích (Analytical skills): Trích xuất thực thể, thuộc tính và mối liên kết từ mô tả nghiệp vụ thực tế; xác định chính xác các ràng buộc toàn vẹn ngữ nghĩa; thẩm định và đánh giá mức độ chuẩn hóa của một lược đồ quan hệ nhằm phát hiện các nguy cơ dị thường khi cập nhật.
  • Kỹ năng thiết kế thực hành (Practical competencies): Chuyển dịch thiết kế khái niệm (E-R) sang lược đồ vật lý; phân rã lược đồ quan hệ về dạng chuẩn 3NF hoặc BCNF bảo đảm tính toàn vẹn dữ liệu và bảo toàn phụ thuộc hàm.

Phương pháp giảng dạy và học tập

Giáo trình triển khai phương pháp tiếp cận diễn dịch: đi từ các định nghĩa toán học hình thức, thiết lập các quy tắc và định lý, sau đó minh họa bằng các biểu thức cụ thể và sơ đồ trực quan. Khái niệm lý thuyết được liên kết với các cấu trúc trực quan hóa chuẩn mực (hình chữ nhật cho tập thực thể, hình oval cho thuộc tính, hình thoi cho mối kết hợp, và bảng hai chiều cho quan hệ logic).

+-------------------------------------------------------------------------+
|                  HỆ THỐNG CASE STUDY & BÀI TẬP THỰC HÀNH                |
+-------------------------------------------------------------------------+
| 1. Quản lý đề án công ty   | NHANVIEN, PHONGBAN, DEAN, DIADIEMPHONG,   |
|                            | PHANCONG, THANNHAN, NVIEN_TNHAN            |
| 2. Nghiệp vụ ngân hàng     | Chi nhánh, Khách hàng, Nhân viên cho vay,  |
|                            | Tài khoản gửi/séc/tiết kiệm, Khoản vay     |
| 3. Quản lý đào tạo đại học | KHOA, LOPHOC, SINHVIEN, MONHOC, KQUATHI,   |
|                            | GIAOVIEN, DAY                              |
| 4. Tổng điều tra dân số    | Tỉnh/Thành phố, Quận/Huyện, Phường/Xã,     |
|                            | Địa bàn, Hộ điều tra, Nhân khẩu            |
+-------------------------------------------------------------------------+

Tài liệu sử dụng các hệ thống bài toán ví dụ và ca nghiên cứu (case studies) nhất quán qua nhiều chương:

  • Hệ thống Quản lý đề án: Bao gồm các quan hệ NHANVIEN, PHONGBAN, DEAN, DIADIEMPHONG, PHANCONG, THANNHAN, NVIEN_TNHAN được sử dụng để minh họa chi tiết cho các phép toán đại số quan hệ (chọn, chiếu, kết nối tự nhiên, kết nối ngoài) và truy vấn SQL.
  • Hệ thống Nghiệp vụ ngân hàng: Dùng làm bài tập thiết kế mô hình E-R với đầy đủ các cấu trúc phức tạp: tài khoản gửi, tài khoản vay, tài khoản tiết kiệm, tài khoản séc, mối liên hệ giữa khách hàng và nhân viên cho vay.
  • Hệ thống Quản lý đào tạo: Sử dụng các quan hệ KHOA, LOPHOC, SINHVIEN, MONHOC, HOCVIEN, GIAOVIEN, KQUATHI, DAY để làm rõ các khái niệm khóa chính, khóa ngoại, ràng buộc miền giá trị và thao tác thêm/xóa/sửa.
  • Hệ thống Dân số và Nhân sự: Dùng trong các bài tập rèn luyện kỹ năng so sánh, chuyển đổi qua lại giữa mô hình phân cấp và mô hình mạng.

Về phương pháp đánh giá, tài liệu định hướng kiểm tra năng lực người học thông qua việc giải quyết các bài toán hình thức: thiết lập biểu thức đại số quan hệ tương đương với câu truy vấn ngôn ngữ tự nhiên, tính toán bao đóng thuộc tính, thực hiện các bước phân rã lược đồ quan hệ bảo toàn thông tin. Người tự học được khuyến nghị nắm vững các định nghĩa hình thức tại Chương 3 và Chương 7 trước khi làm các bài tập thuật toán ở Chương 8.


Điểm nổi bật và cập nhật

Tài liệu phản ánh hệ thống tri thức chuẩn mực của khoa học cơ sở dữ liệu với các đặc trưng:

  • Tổng hợp tiến trình phát triển công nghệ: Giáo trình hệ thống hóa sự tiến hóa từ hệ thống quản lý tập tin riêng rẽ thập niên 1960 sang các thế hệ hệ quản trị cơ sở dữ liệu: mô hình mạng (mẫu tin chủ - thành viên), mô hình phân cấp (cấu trúc cây phân cấp $1:n$), mô hình quan hệ bảng phẳng, và mô hình hướng đối tượng với các đặc trưng đóng gói, kế thừa, đa hình.
  • Chi tiết hóa các phép toán đại số quan hệ mở rộng: Không chỉ dừng lại ở các phép toán cơ bản của Codd, tài liệu trình bày chi tiết các phép toán kết nối mở rộng như kết nối trái (left join), kết nối phải (right join), kết nối ngoài (outer join), cùng các hàm tính toán tổng hợp (Avg, Min, Max, Sum, Count) và gom nhóm trên biểu thức đại số quan hệ.
  • Tính chính xác trong kỹ thuật chuyển đổi lược đồ: Cung cấp quy tắc chuyển đổi tường minh từ mô hình khái niệm sang mô hình logic, xử lý riêng biệt cho các trường hợp: tập thực thể chuyên biệt hóa có hoặc không có thuộc tính riêng, tập thực thể yếu có khóa bộ phận, mối kết hợp $1:1$, $1:n$, $n:n$, và kỹ thuật gộp các quan hệ có cùng khóa chính.
  • Liên hệ thực tiễn với các hệ quản trị CSDL thương mại: Tài liệu viện dẫn cách thức hiện thực hóa các khái niệm lý thuyết trong các phần mềm DBMS phổ biến tại thời điểm biên soạn như Microsoft Access, Microsoft SQL Server, Oracle, DB2, Visual FoxPro (ví dụ: so sánh kiểu dữ liệu chuỗi text, memo trong Access với char, varchar, nvarchar trong SQL Server).

Đối tượng sử dụng giáo trình

  • Sinh viên đại học: Giáo trình được thiết kế trực tiếp cho sinh viên năm thứ hai hoặc năm thứ ba chuyên ngành Công nghệ Thông tin, Hệ thống Thông tin, Kỹ thuật Phần mềm và Khoa học Máy tính học tập theo học chế tín chỉ.
  • Yêu cầu kiến thức tiên quyết (Prerequisites): Người học cần hoàn thành các môn học tiên quyết bao gồm:
    • Toán rời rạc: Nắm vững lý thuyết tập hợp, tích Descartes, ánh xạ, quan hệ tương đương, logic mệnh đề và logic vị từ bậc một.
    • Cấu trúc dữ liệu và giải thuật: Hiểu về mảng, danh sách liên kết, cây phân cấp, đồ thị có hướng và các thuật toán tìm kiếm/duyệt.
  • Giảng viên chuyên ngành: Sử dụng tài liệu làm đề cương bài giảng chuẩn cho môn học Cơ sở dữ liệu; khai thác ngân hàng ví dụ mẫu (quản lý nhân sự, đề án, ngân hàng) để xây dựng đề thi tự luận, bài tập lớn và bài kiểm tra thực hành.
  • Người tự học và kỹ sư phần mềm: Tài liệu đóng vai trò tài liệu tham khảo cho các lập trình viên cần củng cố lý thuyết thiết kế dữ liệu chuẩn tắc, hiểu rõ bản chất hoạt động của bộ tối ưu hóa truy vấn SQL thông qua đại số quan hệ, và áp dụng các dạng chuẩn (3NF, BCNF) để loại bỏ hiện tượng dư thừa dữ liệu trong các dự án thực tế.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với ai?

Giáo trình phù hợp trực tiếp với sinh viên đại học ngành Công nghệ Thông tin, học viên cao học cần củng cố lý thuyết cơ sở dữ liệu quan hệ, giảng viên giảng dạy học phần Cơ sở dữ liệu và các kỹ sư phần mềm cần tài liệu tra cứu chuẩn về lý thuyết chuẩn hóa dữ liệu.

2. Cần kiến thức nền nào để học?

Người học cần nắm chắc kiến thức Toán rời rạc (lý thuyết tập hợp, phép toán quan hệ, logic vị từ bậc một) và Cấu trúc dữ liệu căn bản (cây, đồ thị, mảng dữ liệu) để có thể hiểu và thực hiện các thuật toán tìm bao đóng, tìm khóa và chuẩn hóa lược đồ.

3. Điểm khác biệt của giáo trình này là gì?

Tài liệu tập trung sâu vào bản chất toán học hình thức của cơ sở dữ liệu quan hệ. Nội dung không chỉ dừng lại ở cú pháp SQL thực hành mà trình bày đầy đủ cả ba ngôn ngữ hình thức: đại số quan hệ, ngôn ngữ tân từ biến bộ và ngôn ngữ tân từ biến miền giá trị, cùng thuật toán tối ưu hóa thiết kế CSDL (thuật toán phủ tối thiểu, thuật toán phân rã 3NF/BCNF).

4. Làm sao để tự học giáo trình hiệu quả?

Người học nên tuân thủ lộ trình 3 giai đoạn:

  1. Học kỹ lý thuyết mô hình hóa ở Chương 1, 2, 3 và làm các bài tập thiết kế E-R.
  2. Thực hành biểu diễn các truy vấn đồng thời trên cả ba công cụ ở Chương 4, 5, 6 (Đại số quan hệ $\rightarrow$ Ngôn ngữ tân từ $\rightarrow$ SQL) dựa trên lược đồ Quản lý đề án.
  3. Rèn luyện kỹ năng thực thi thuật toán ở Chương 7, 8 bằng cách giải các bài toán tìm khóa, tìm phủ tối thiểu và phân rã dạng chuẩn từng bước trên giấy.

5. Có tài liệu bổ trợ nào kèm theo?

Tài liệu cung cấp hệ thống câu hỏi lý thuyết, bài tập tình huống thiết kế mô hình E-R (như bài toán hệ thống ngân hàng, điều tra dân số) ở cuối mỗi chương, cùng danh mục tài liệu tham khảo chuyên ngành tại trang 109.


Kết luận

Giáo trình Cơ sở dữ liệu của Khoa Công nghệ Thông tin – Trường Đại học Đà Lạt là tài liệu học thuật có cấu trúc hoàn chỉnh, cung cấp nền tảng lý thuyết vững chắc về mô hình dữ liệu quan hệ, các ngôn ngữ truy vấn hình thức và lý thuyết chuẩn hóa cơ sở dữ liệu. Lộ trình học tập khuyến nghị bắt đầu từ việc nắm vững mô hình khái niệm E-R (Chương 1–3), chuyển sang làm chủ các ngôn ngữ đại số quan hệ và SQL (Chương 4–6), sau đó hoàn thiện năng lực thiết kế tối ưu thông qua lý thuyết phụ thuộc hàm và các thuật toán chuẩn hóa (Chương 7–8). Người học có thể kết hợp giáo trình này với các hệ quản trị CSDL thực hành (như Oracle, SQL Server) và danh mục tài liệu tham khảo tại trang 109 để mở rộng kiến thức chuyên sâu.