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

Giáo trình Cơ sở dữ liệu (Mã số môn học: MH 10) do tác giả Trần Thị Kim Ngọc biên soạn, được ban hành năm 2018 tại Trường Cao đẳng Nghề An Giang theo chương trình đào tạo nghề Lập trình máy tính và Tin học ứng dụng cho hai hệ đào tạo: Cao đẳng nghề và Trung cấp nghề.

Môn học: Cơ sở dữ liệu (MH 10)
Tác giả: Trần Thị Kim Ngọc | Năm ban hành: 2018
Đơn vị: Trường Cao đẳng Nghề An Giang
Vị trí đào tạo: Môn cơ sở nghề bắt buộc (sau môn Toán cho tin học và Tin học căn bản)

Về vị trí trong chương trình đào tạo, môn học thuộc nhóm kiến thức cơ sở ngành bắt buộc. Giáo trình đóng vai trò cung cấp nền tảng lý thuyết và kỹ năng thiết kế dữ liệu để học sinh - sinh viên tiếp thu các mô-đun chuyên môn tiếp theo như lập trình ứng dụng, công nghệ phần mềm và quản trị hệ thống.

Mục tiêu học tập của tài liệu được xác định trên ba phương diện cụ thể:

  • Kiến thức: Trình bày các bước và ý nghĩa của việc thiết kế cơ sở dữ liệu; giải thích các khái niệm cốt lõi bao gồm khóa, lược đồ quan hệ, ràng buộc toàn vẹn, phụ thuộc hàm; nắm vững cú pháp các ngôn ngữ định nghĩa dữ liệu (DDL), thao tác dữ liệu (DML) và truy vấn dữ liệu (SQL).
  • Kỹ năng: Xây dựng mô hình quan hệ; phân tích yêu cầu bài toán quản lý; thiết kế và chuẩn hóa cơ sở dữ liệu; thực hiện các truy vấn dữ liệu từ cơ bản đến phức tạp.
  • Năng lực tự chủ và trách nhiệm: Rèn luyện phương pháp tư duy logic độc lập, tính chính xác trong việc xử lý ràng buộc dữ liệu, tổ chức học tập và làm việc nhóm.

Về cấu trúc và cách tiếp cận, tài liệu gồm 6 chương được tổ chức theo quy trình kỹ thuật: từ các khái niệm tổng quan về mô hình dữ liệu, đến cơ sở toán học của mô hình quan hệ (đại số tập hợp và đại số quan hệ), hiện thực hóa trên ngôn ngữ SQL, xử lý ràng buộc - chuẩn hóa dữ liệu và tối ưu hóa câu truy vấn. Cuối mỗi chương đều có hệ thống bài tập củng cố lý thuyết và bài tập phân tích thực hành.


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

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

Giáo trình phân chia nội dung giảng dạy thành 6 chương chuyên đề nối tiếp nhau theo tiến trình logic:

  • Chương I: Tổng quan về cơ sở dữ liệu: Trình bày định nghĩa cơ sở dữ liệu (CSDL), chức năng của Hệ quản trị cơ sở dữ liệu (DBMS) và các đặc tính kiểm soát giao dịch, an toàn dữ liệu. Chương này phân loại các mô hình dữ liệu qua ba thế hệ:
    • Thế hệ 1 (dựa trên bản ghi): Mô hình mạng (Network model) và mô hình phân cấp (Hierarchical model).
    • Thế hệ 2 (dựa trên đối tượng/quan hệ): Mô hình quan hệ (Relational model) và mô hình thực thể - liên kết (Entity-Relationship model / E-R).
    • Thế hệ 3 (ngữ nghĩa): Mô hình hướng đối tượng (Object-Oriented model) và đối tượng - quan hệ.
  • Chương II: Mô hình cơ sở dữ liệu quan hệ: Định nghĩa các thành phần cơ bản: thuộc tính (Attribute), miền giá trị (Domain), bộ giá trị (Tuple), lược đồ quan hệ (Relation Schema) và thể hiện của quan hệ (Instance). Chương này thiết lập hệ thống định nghĩa về các loại khóa: siêu khóa (Superkey), khóa chỉ định (Candidate key), khóa chính (Primary key), khóa ngoại (Foreign key). Đồng thời, chương trình bày chi tiết hai nhóm phép toán:
    • Phép toán đại số tập hợp: Phép hợp ($\cup$), phép giao ($\cap$), phép trừ ($-$), phép tích Descartes ($\times$), phép chia ($\div$).
    • Phép toán đại số quan hệ: Phép chiếu ($\pi$ hoặc $Q[X]$), phép chọn ($\sigma$ hoặc $r:E$), phép kết nối ($\theta$-join, kết bằng, kết tự nhiên) và các phép kết mở rộng (Left/Right/Full Outer Join).
  • Chương III: Ngôn ngữ dữ liệu SQL: Phân tích cú pháp và cơ chế thực thi của SQL dựa trên khối lệnh SELECT - FROM - WHERE. Cung cấp đầy đủ các nhóm lệnh:
    • Định nghĩa cấu trúc (DDL): CREATE TABLE, ALTER TABLE (thêm cột, sửa kiểu dữ liệu, thêm/xóa ràng buộc CONSTRAINT), DROP TABLE.
    • Cập nhật dữ liệu (DML): INSERT INTO (thêm trực tiếp hoặc thêm từ bảng có sẵn bằng SELECT), UPDATE ... SET, DELETE FROM.
    • Truy vấn dữ liệu (DQL): Mệnh đề lọc WHERE (toán tử LIKE, BETWEEN, IN, AND/OR), sắp xếp ORDER BY (ASC/DESC), phân nhóm GROUP BY kết hợp điều kiện nhóm HAVING, truy vấn con lồng nhau (Subqueries), các hàm tính toán tập hợp (COUNT, SUM, AVG, MIN, MAX), hàm chuỗi (LEN, LEFT, RIGHT) và hàm ngày tháng (GETDATE, DAY, MONTH, YEAR).
  • Chương IV: Ràng buộc toàn vẹn và phụ thuộc hàm: Phân loại các quy tắc ràng buộc toàn vẹn (miền giá trị, liên thuộc tính, liên bộ, liên quan hệ) nhằm ngăn chặn dữ liệu không hợp lệ. Thiết lập cơ sở lý thuyết về phụ thuộc hàm (Functional Dependencies) làm công cụ mô tả ngữ nghĩa dữ liệu.
  • Chương V: Dạng chuẩn và chuẩn hóa lược đồ cơ sở dữ liệu quan hệ: Định nghĩa các dạng chuẩn (1NF, 2NF, 3NF, BCNF) và các thuật toán phân rã lược đồ nhằm loại bỏ dư thừa dữ liệu, khắc phục các dị thường khi thêm, xóa và sửa dữ liệu.
  • Chương VI: Tối ưu hóa câu hỏi: Trình bày nguyên tắc tổng quát và các thuật toán biến đổi tương đương biểu thức đại số quan hệ nhằm giảm thiểu chi phí xử lý và kích thước các quan hệ trung gian trong quá trình truy vấn.

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

Giáo trình trang bị hệ thống lý thuyết cốt lõi bao gồm:

  1. Lý thuyết tập hợp và logic toán: Làm nền tảng cho việc biểu diễn quan hệ, các phép toán đại số quan hệ và cú pháp lọc điều kiện logic trong truy vấn.
  2. Khung mô hình hóa thực thể - liên kết (E-R): Quy trình xác định thực thể, thuộc tính, tập liên kết (1-1, 1-n, n-m, liên kết đệ quy) để chuyển đổi từ bài toán quản lý thực tế sang mô hình dữ liệu vật lý.
  3. Cơ chế toàn vẹn dữ liệu: Thiết lập các ràng buộc khóa chính (PRIMARY KEY), khóa ngoại (FOREIGN KEY), giá trị duy nhất (UNIQUE), giá trị mặc định (DEFAULT), ràng buộc khác rỗng (NOT NULL) và kiểm tra điều kiện miền giá trị (CHECK).
Khung lý thuyết Khái niệm then chốt Ứng dụng trong giáo trình
Đại số quan hệ Chiếu, Chọn, Tích Descartes, Kết tự nhiên, Outer Join Thiết lập biểu thức truy vấn hình thức
Ngôn ngữ SQL DDL, DML, DQL, Mệnh đề GROUP BY / HAVING, Subqueries Viết kịch bản tạo bảng, cập nhật và trích xuất dữ liệu
Toàn vẹn dữ liệu Khóa chính, Khóa ngoại, Ràng buộc CHECK, NOT NULL Đảm bảo tính nhất quán của dữ liệu nghiệp vụ
Chuẩn hóa dữ liệu Phụ thuộc hàm, 1NF, 2NF, 3NF, BCNF Phân rã lược đồ, khử dư thừa và dị thường

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Viết mã lệnh SQL thành thạo để tạo lập lược đồ, sửa đổi cấu trúc bảng, thiết lập ràng buộc toàn vẹn và trích xuất thông tin đa bảng bằng các phép kết nối hoặc truy vấn lồng.
  • Kỹ năng phân tích (Analytical skills): Phân tích ngữ nghĩa nghiệp vụ từ mô tả bài toán thực tế (tân từ) để xác định đúng khóa, các mối liên kết giữa các thực thể và các ràng buộc toàn vẹn cần áp dụng.
  • Kỹ năng thiết kế và tối ưu (Practical competencies): Xây dựng lược đồ cơ sở dữ liệu có cấu trúc hợp lý, áp dụng lý thuyết dạng chuẩn để chuẩn hóa lược đồ và ứng dụng nguyên tắc tối ưu hóa nhằm nâng cao hiệu năng truy xuất dữ liệu.

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 sư phạm đi từ cơ sở toán học hình thức đến công cụ thực thi kỹ thuật. Khái niệm lý thuyết được giới thiệu thông qua các mô hình trừu tượng (như đồ thị mô hình mạng, cây phân cấp, bảng quan hệ), sau đó được chuyển dịch cụ thể sang cú pháp dòng lệnh SQL tiêu chuẩn.

Hệ thống bài tập và nghiên cứu tình huống (case studies) trong giáo trình được xây dựng bám sát các bài toán quản lý thực tế:

  • Hệ thống quản lý điểm và hồ sơ sinh viên: Gồm 5 lược đồ quan hệ:
    • Sv(MASV, HOTEN, NU, NGAYSINH, MALOP, TINH, HOCBONG)
    • Lop(MALOP, TENLOP, SISO, MAKHOA)
    • Kh(MAKHOA, TENKHOA, SOCBGD)
    • Mh(MAMH, TENMH, SOTIET)
    • Kq(MASV, MAMH, DIEMTHI)
  • Hệ thống quản lý nhân sự và công trình: Gồm các lược đồ Congtrinh, Nhanvien, Phongban, Phancong dùng để thực hành các câu truy vấn thống kê ngày công và phân công dự án.
  • Hệ thống theo dõi lịch báo giảng và quản lý kỳ thi giỏi nghề: Cung cấp dữ liệu mẫu phục vụ các thao tác xử lý chuỗi, hàm thời gian và mệnh đề gom nhóm phức tạp.
-- Ví dụ truy vấn lồng nhau trích xuất từ Chương III:
-- Tìm họ tên sinh viên thuộc khoa quản lý môn học do giáo viên 'Nguyễn Thanh Tùng' phụ trách
SELECT HOTEN 
FROM SINHVIEN 
WHERE KHOA = (
    SELECT KHOA 
    FROM MONHOC 
    WHERE MAMH = (
        SELECT MAMH 
        FROM MONHOC 
        WHERE GV = 'Nguyễn Thanh Tùng'
    )
);

Về phương pháp đánh giá, giáo trình đưa ra các hình thức kiểm tra qua bài tập cuối chương bao gồm:

  1. Viết biểu thức đại số quan hệ đáp ứng yêu cầu trích xuất dữ liệu.
  2. Viết câu lệnh SQL định nghĩa cấu trúc bảng đi kèm đầy đủ các ràng buộc khóa và điều kiện kiểm tra miền giá trị.
  3. Viết câu lệnh truy vấn dữ liệu từ mức đơn giản đến các truy vấn sử dụng hàm gộp (COUNT, AVG, SUM) và điều kiện HAVING.

Về hướng dẫn tự học, sinh viên được định hướng làm việc với các bài tập phân tầng: phần bài tập cơ bản giúp củng cố cú pháp và phần bài tập nâng cao yêu cầu tự phân tích, thiết kế lược đồ quan hệ cho các hệ thống như quản lý công ty, quản lý dự án.


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

  • Hệ thống hóa toàn diện các mô hình dữ liệu: Giáo trình cung cấp bảng phân loại và đánh giá ưu - nhược điểm kỹ thuật của từng mô hình qua các thế hệ phát triển, làm rõ sự chuyển đổi từ mô hình mạng, phân cấp sang mô hình quan hệ và mô hình hướng đối tượng:
[Mô hình Thế hệ 1: Mạng / Phân cấp]
[Mô hình Thế hệ 2: Quan hệ / Thực thể - Liên kết (E-R)]
[Mô hình Thế hệ 3: Hướng đối tượng / Đối tượng - Quan hệ]
  • Tính chuẩn mực của ngôn ngữ SQL: Nội dung giảng dạy bám sát tiêu chuẩn ngôn ngữ SQL (phát triển từ SEQUEL-2 và hệ thống System-R của IBM), đồng thời chỉ rõ sự tương thích và cách áp dụng trên các hệ quản trị cơ sở dữ liệu thương mại phổ biến như Oracle, Microsoft Access, Microsoft SQL Server, FoxPro.
  • Tích hợp chặt chẽ giữa lý thuyết đại số và ngôn ngữ thực thi: Mọi thao tác truy vấn trong SQL (khối SELECT - FROM - WHERE) đều được giải thích dựa trên bản chất của các phép toán đại số quan hệ tương ứng (phép chiếu, phép chọn và phép kết nối).
  • Ứng dụng thực tiễn với hệ thống ràng buộc cụ thể: Các ví dụ ràng buộc toàn vẹn gắn liền với logic quản trị dữ liệu thực tế, chẳng hạn như kiểm tra khoảng điểm thi CHECK (DIEM >= 0 AND DIEM <= 10) hay quy định mức lương nhân viên không vượt quá trưởng phòng.

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

  • Sinh viên chuyên ngành: Học sinh - sinh viên theo học trình độ Cao đẳng nghề và Trung cấp nghề thuộc nghề Lập trình máy tính và Tin học ứng dụng, cũng như các ngành đào tạo thuộc khối Công nghệ thông tin cần học môn cơ sở dữ liệu đại cương.
  • Kiến thức tiên quyết (Prerequisites): Người học cần hoàn thành môn Toán cho tin học (nắm vững lý thuyết tập hợp, quan hệ, đại số mệnh đề logic) và môn Tin học căn bản (thao tác hệ điều hành, tệp tin và tư duy thuật toán cơ bản).
  • Giảng viên chuyên ngành: Sử dụng tài liệu làm khung bài giảng chuẩn theo phân phối chương trình môn học MH 10, khai thác hệ thống dữ liệu mẫu và các bài tập lược đồ quản lý sinh viên, nhân sự để phục vụ công tác giảng dạy lý thuyết và thực hành tại phòng máy.
  • Người tự học và cán bộ kỹ thuật: Dùng làm tài liệu tham khảo để tra cứu các quy tắc đại số quan hệ, cú pháp câu lệnh SQL chuẩn và các bước chuẩn hóa lược đồ dữ liệu.

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

1. Giáo trình này phù hợp với đối tượng nào?

Giáo trình được thiết kế theo chương trình khung môn học của Bộ ban hành, dành cho học sinh - sinh viên hệ Cao đẳng nghề và Trung cấp nghề thuộc nghề Lập trình máy tính và Tin học ứng dụng.

2. Cần trang bị những kiến thức nền tảng nào trước khi học?

Người học cần hoàn thành hai môn học tiên quyết trong chương trình đào tạo là Toán cho tin học (cung cấp kiến thức về lý thuyết tập hợp, ánh xạ và logic toán) và Tin học căn bản (cung cấp kỹ năng làm việc với hệ điều hành và lưu trữ tệp tin).

3. Điểm khác biệt về mặt cấu trúc nội dung của giáo trình này là gì?

Giáo trình kết nối trực tiếp giữa lý thuyết toán học (đại số tập hợp, đại số quan hệ) với việc thực thi kỹ thuật trên ngôn ngữ SQL chuẩn. Bên cạnh kỹ năng truy vấn, giáo trình còn dành riêng các chương phân tích chuyên sâu về lý thuyết phụ thuộc hàm, các dạng chuẩn (1NF, 2NF, 3NF, BCNF) và nguyên lý tối ưu hóa biểu thức truy vấn.

4. Phương pháp tự học giáo trình này như thế nào để đạt hiệu quả?

Người học nên nắm vững định nghĩa và ý nghĩa hình thức của các phép toán ở Chương II, sau đó trực tiếp cài đặt các kịch bản bảng và thực hành câu lệnh SQL tương ứng ở Chương III trên một hệ quản trị CSDL cụ thể (như SQL Server, Oracle hoặc Access). Sau đó, áp dụng các bài tập ở Chương IV và V để rèn luyện kỹ năng phân tích lược đồ và chuẩn hóa dữ liệu.

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

Cuối giáo trình có bảng tổng hợp Các thuật ngữ chuyên môn (giải thích đối chiếu các khái niệm quan hệ, bộ, thuộc tính, khóa, ràng buộc) và danh mục Tài liệu tham khảo phục vụ người học mở rộng kiến thức.


Kết luận

Giáo trình Cơ sở dữ liệu (MH 10) của tác giả Trần Thị Kim Ngọc cung cấp hệ thống kiến thức toàn diện về mô hình dữ liệu quan hệ, từ nguyên lý toán học nền tảng, ngôn ngữ truy vấn cấu trúc SQL đến kỹ thuật thiết kế, chuẩn hóa lược đồ và tối ưu hóa câu hỏi.

Lộ trình học tập đề xuất theo giáo trình gồm 4 giai đoạn nối tiếp:

1. Khái niệm & Đại số quan hệ (Chương I, II)
2. Ngôn ngữ SQL & Thực thi truy vấn (Chương III)
3. Ràng buộc toàn vẹn & Chuẩn hóa lược đồ (Chương IV, V)
4. Tối ưu hóa truy vấn & Ứng dụng thực tế (Chương VI & Bài tập tổng hợp)

Nguồn tài nguyên đi kèm gồm hệ thống lược đồ mẫu (Sinhvien, Monhoc, Ketqua, Nhanvien, Congtrinh), mục lục thuật ngữ chuyên môn và danh mục tài liệu tham khảo giúp người học hoàn thiện kỹ năng thiết kế cơ sở dữ liệu cho các ứng dụng phần mềm.