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

Giáo trình Cơ sở Dữ liệu do TS. Trịnh Hoàng Nam chủ biên, cùng các tác giả ThS. Nguyễn Thị Trà Linh và ThS. Tạ Thị Hoàng Mai biên soạn, được Trường Đại học Ngân hàng TP. Hồ Chí Minh phối hợp với Nhà xuất bản Lao Động phát hành. Trong chương trình đào tạo bậc đại học và cao học thuộc các nhóm ngành Công nghệ thông tin, Hệ thống thông tin quản lý, cũng như các khối ngành kinh tế định hướng công nghệ như Tài chính số, Thương mại điện tử và Ngân hàng số, học phần Cơ sở dữ liệu giữ vị trí học phần cơ sở ngành bắt buộc. Môn học đóng vai trò cầu nối kiến thức giữa kỹ thuật lập trình căn bản, cấu trúc dữ liệu với việc phân tích, thiết kế và phát triển các hệ thống thông tin quy mô lớn.

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

  • Hệ thống lý thuyết nền tảng về bản chất của dữ liệu, cấu trúc hệ quản trị cơ sở dữ liệu (DBMS) và các mức trừu tượng hóa dữ liệu.
  • Kỹ năng phân tích, mô hình hóa dữ liệu mức ý niệm thông qua mô hình thực thể kết hợp (ER) và thực thể kết hợp mở rộng (EER).
  • Phương pháp chuyển đổi từ mô hình thực thể sang mô hình dữ liệu quan hệ, nắm vững các ràng buộc toàn vẹn và các phép toán đại số quan hệ.
  • Năng lực thao tác dữ liệu thông qua ngôn ngữ truy vấn có cấu trúc (SQL) từ các câu lệnh cơ bản đến các truy vấn lồng phức tạp.
  • Khả năng phân tích phụ thuộc hàm, áp dụng hệ tiên đề Armstrong để chuẩn hóa lược đồ dữ liệu về các dạng chuẩn (1NF, 2NF, 3NF, BCNF), cùng kỹ thuật tối ưu hóa biểu thức đại số quan hệ.

Cấu trúc tài liệu gồm 9 chương với dung lượng 245 trang, được thiết kế theo lộ trình chuẩn kỹ thuật phần mềm: đi từ mô hình hóa ý niệm thế giới thực, đặc tả luận lý, cài đặt ngôn ngữ truy vấn, đến lý thuyết chuẩn hóa và tối ưu hóa xử lý. Điểm đặc sắc về phương pháp luận của giáo trình là việc sử dụng một bài toán nghiệp vụ xuyên suốt mang tên cơ sở dữ liệu COMPANY (mô hình doanh nghiệp CNTT gồm các thực thể DEPARTMENT, PROJECT, EMPLOYEE, DEPENDENT). Cách tiếp cận nhất quán này giúp người học theo dõi rõ ràng toàn bộ chu trình phát triển dữ liệu qua từng chương mà không bị phân tán bởi các ngữ cảnh ví dụ rời rạc.


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

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

Nội dung giáo trình được triển khai qua 9 chương chuyên đề mang tính liên kết logic chặt chẽ:

  • Chương 1: Tổng quan về hệ thống cơ sở dữ liệu (Trang 1 - 16) Trình bày sự chuyển dịch từ hệ thống hướng tập tin sang hệ thống hướng cơ sở dữ liệu nhằm giải quyết tình trạng dư thừa dữ liệu, không đồng bộ và phụ thuộc mã nguồn. Giới thiệu cấu trúc tổng thể của DBMS gồm: bộ quản lý lưu trữ cấp cao, bộ xử lý CSDL, từ điển dữ liệu (metadata). Phân loại DBMS theo mô hình dữ liệu (quan hệ, phân cấp, mạng, hướng đối tượng, đối tượng - quan hệ), theo số người dùng (đơn người dùng, đa người dùng), và theo vị trí triển khai (tập trung, phân tán). Định vị quyền hạn 5 nhóm người dùng (quản trị CSDL, thiết kế CSDL, người dùng cuối, phân tích/lập trình ứng dụng, bảo trì hệ thống) cùng 3 phân nhóm ngôn ngữ: DDL, DML và DCL.

  • Chương 2: Mô hình thực thể kết hợp (Trang 17 - 40) Xây dựng các khái niệm mô hình hóa ý niệm (ER): tập thực thể, phân loại thuộc tính (đơn, tổ hợp, đơn trị, đa trị, lưu trữ, dẫn xuất, giá trị NULL, thuộc tính khóa). Phân loại kiểu liên kết nhị phân (1-1, 1-N, N-N), liên kết $n$-ngôi, vai trò của thực thể, thuộc tính của liên kết và tập thực thể yếu (DEPENDENT). Xác lập quy tắc vẽ sơ đồ và quy ước đặt tên chuẩn tắc cho mô hình COMPANY.

  • Chương 3: Mô hình thực thể kết hợp mở rộng (Trang 41 - 60) Mở rộng các hạn chế của mô hình ER truyền thống bằng việc đưa vào các cấu trúc nâng cao: lớp cha - lớp con (superclass/subclass), tính kế thừa thuộc tính, cơ chế chuyên biệt hóa (specialization), khái quát hóa (generalization), các ràng buộc phân cấp (rời rạc, chồng lấp, toàn phần, một phần), biểu diễn cấu trúc cây và lưới phân cấp. Giới thiệu tổng quan về các công cụ CASE hỗ trợ thiết kế tự động.

  • Chương 4: Mô hình dữ liệu quan hệ (Trang 61 - 81) Định nghĩa hình thức về quan hệ, bộ giá trị (tuple), lược đồ quan hệ và 7 ràng buộc toàn vẹn cốt lõi: miền giá trị, khóa chính, giá trị NULL, toàn vẹn thực thể, toàn vẹn tham chiếu (khóa ngoại), ràng buộc ngữ nghĩa và phụ thuộc hàm. Phân tích các toán tử cập nhật (Insert, Delete, Update) cùng cơ chế xử lý vi phạm toàn vẹn tham chiếu (Cascade, Set Null, Restrict).

  • Chương 5: Đại số quan hệ và phép tính quan hệ (Trang 82 - 112) Cung cấp công cụ toán học nền tảng cho việc truy vấn dữ liệu. Khảo sát các phép toán một ngôi (chọn $\sigma$, chiếu $\pi$), các phép toán tập hợp hai ngôi (hợp $\cup$, giao $\cap$, trừ $-$, tích Descartes $\times$), các phép kết nối (kết $\theta$, kết bằng, kết tự nhiên $\bowtie$, kết ngoài $\leftouterjoin, \rightouterjoin, \fullouterjoin$), cùng các hàm kết hợp và phép gom nhóm. Trình bày ngôn ngữ hình thức: phép tính quan hệ trên bộ (TRC) và phép tính quan hệ trên miền (DRC), lượng hóa tồn tại ($\exists$), lượng hóa phổ dụng ($\forall$) và điều kiện an toàn của biểu thức.

  • Chương 6: Thiết kế cơ sở dữ liệu (Trang 113 - 143) Quy trình thiết kế CSDL qua 4 giai đoạn: đặc tả yêu cầu, thiết kế ý niệm, thiết kế luận lý và thiết kế vật lý. Cung cấp các quy tắc thuật toán ánh xạ (mapping) từ lược đồ ER và EER sang lược đồ quan hệ tương ứng, bảo toàn cấu trúc thực thể, mối kết hợp 1-1, 1-N, N-N, thực thể yếu và cấu trúc kế thừa phân cấp.

  • Chương 7: Ngôn ngữ truy vấn có cấu trúc (SQL) (Trang 144 - 183) Hiện thực hóa mô hình quan hệ trên môi trường máy tính thông qua SQL: câu lệnh DDL (CREATE TABLE, khai báo khóa chính, khóa ngoại, ràng buộc CHECK, NOT NULL, sửa đổi lược đồ bằng ALTER TABLE); câu lệnh DML (INSERT, UPDATE, DELETE); cú pháp truy vấn từ cơ bản (SELECT - FROM - WHERE, bí danh, sắp xếp ORDER BY) đến nâng cao (truy vấn lồng phân cấp, truy vấn lồng tương quan, toán tử EXISTS, các hàm kết hợp COUNT, SUM, AVG, MIN, MAX, mệnh đề gom nhóm GROUP BY và điều kiện HAVING).

  • Chương 8: Lý thuyết thiết kế cơ sở dữ liệu quan hệ (Trang 184 - 223) Giải quyết các vấn đề bất thường khi cập nhật, thêm, xóa do dư thừa dữ liệu. Trình bày hình thức lý thuyết phụ thuộc hàm ($X \rightarrow Y$), hệ tiên đề Armstrong và các quy tắc dẫn xuất (phân tách, kết hợp, bắc cầu), thuật toán tính bao đóng thuộc tính ($X^+$), kiểm tra phân tách không tổn thất thông tin (lossless join) và bảo toàn phụ thuộc hàm. Định nghĩa và chứng minh thuật toán phân rã đạt các dạng chuẩn: 1NF, 2NF, 3NF và Boyce-Codd (BCNF).

  • Chương 9: Tối ưu hóa truy vấn (Trang 224 - 244) Khảo sát cơ chế xử lý nội tại của DBMS: biểu diễn truy vấn bằng cây đại số quan hệ, các quy tắc tương đương hình thức trong biến đổi biểu thức (đẩy phép chọn $\sigma$ và phép chiếu $\pi$ xuống sớm nhất có thể), thuật toán chuẩn hóa cây truy vấn nhằm tối thiểu hóa kích thước dữ liệu trung gian, và tối ưu hóa câu truy vấn thông qua việc sử dụng khung nhìn (views).

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

  • Cơ sở lý thuyết hình thức: Dựa trên nền tảng toán học của lý thuyết tập hợp, quan hệ toán học và logic vị từ bậc nhất, cung cấp chứng minh chặt chẽ cho tính đúng đắn của các phép biến đổi dữ liệu.
  • Nguyên lý kiến trúc: Đảm bảo nguyên lý độc lập dữ liệu hai mức (độc lập dữ liệu vật lý và độc lập dữ liệu luận lý), phân tách ranh giới giữa tầng lưu trữ, tầng quản trị DBMS và tầng ứng dụng người dùng.
  • Khung chuẩn mực thiết kế: Quy trình thiết kế dữ liệu chuẩn tắc (ER/EER $\rightarrow$ Relational Schema $\rightarrow$ Normalization $\rightarrow$ SQL Implementation $\rightarrow$ Optimization).

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Thành thạo cú pháp SQL tiêu chuẩn để định nghĩa lược đồ, kiểm soát ràng buộc toàn vẹn và lập trình các truy vấn trích xuất dữ liệu đa bảng; vẽ và đọc hiểu sơ đồ ER/EER theo ký hiệu chuẩn.
  • Kỹ năng phân tích (Analytical skills): Khả năng phân tích yêu cầu nghiệp vụ từ văn bản mô tả để xác định thực thể, thuộc tính và liên kết; kỹ năng phát hiện bất thường dữ liệu và thực hiện chuẩn hóa quan hệ đến 3NF/BCNF; phân tích chi phí và tối ưu hóa biểu thức đại số quan hệ.
  • Năng lực thực hành (Practical competencies): Chuyển đổi hoàn chỉnh bản đặc tả yêu cầu kinh doanh thành một cơ sở dữ liệu quan hệ vận hành ổn định trên các hệ quản trị CSDL phổ biến.

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

Giáo trình được xây dựng theo phương pháp sư phạm tiếp cận từ trừu tượng đến cụ thể, kết hợp song song giữa lý thuyết toán học và ứng dụng kỹ thuật:

Hệ thống bài tập và Case Studies thực tế

Bên cạnh ca nghiên cứu chính COMPANY, giáo trình tích hợp một hệ thống bài tập tình huống phong phú được thiết kế gắn liền với các hoạt động nghiệp vụ đa dạng:

  • Hệ thống quản lý thông tin khách hàng và tài khoản ngân hàng: Mô hình hóa quan hệ giữa khách hàng và các loại tài khoản, xử lý trường hợp một khách hàng có nhiều địa chỉ chi tiết (số nhà, tên đường, quận/huyện, tỉnh/thành phố) và nhiều số điện thoại liên lạc.
  • Hệ thống dữ liệu giải bóng đá Ngoại hạng Anh: Quản lý thông tin các đội bóng, cầu thủ, vị trí thi đấu, đội trưởng, màu đồng phục, thời gian tham gia thi đấu thực tế và dữ liệu về các hội cổ động viên.
  • Hệ thống bãi đậu xe doanh nghiệp: Quản lý phân quyền bãi đỗ xe theo phòng ban, số tầng, vị trí đỗ xe, mã số định danh và thông tin phương tiện của nhân viên.
  • Hệ thống quản lý đào tạo tin học: Mô hình hóa hoạt động đào tạo gồm 30 giảng viên, 10 lớp học, phân bổ chủ đề theo tháng, với các ràng buộc khắt khe về định mức giảng dạy tối đa và trợ giảng.
  • Hệ thống quản lý bán lẻ linh kiện vi tính: Thiết kế hệ thống hóa đơn bán hàng, phân nhóm linh kiện theo khu vực trưng bày và lưu vết lịch sử giao dịch mua sắm.

Đánh giá và hướng dẫn tự học

Sau mỗi chương, giáo trình thiết lập bộ công cụ tự đánh giá 3 lớp rõ ràng:

  1. Hệ thống câu hỏi ôn tập tự luận: Giúp người học củng cố các định nghĩa, phân biệt khái niệm (như thuộc tính đơn vs thuộc tính tổ hợp, tập thực thể mạnh vs tập thực thể yếu, các dạng liên kết).
  2. Ngân hàng câu hỏi trắc nghiệm khách quan: Kiểm tra độ chính xác trong việc nắm bắt lý thuyết, bản chất các toán tử và cấu trúc các thành phần DBMS.
  3. Bài tập thiết kế và tính toán: Yêu cầu người học tự xây dựng lược đồ ER, tính bao đóng thuộc tính, kiểm tra phân rã không mất mát thông tin và viết truy vấn SQL hoàn chỉnh.

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

  • Làm rõ sự khác biệt giữa hệ thống tập tin truyền thống và DBMS hiện đại: Phân tích cụ thể các hạn chế về dư thừa thông tin, thiếu đồng bộ dữ liệu và sự phụ thuộc chặt chẽ giữa chương trình với cấu trúc tập tin vật lý của hệ thống hướng tập tin cũ, từ đó làm nổi bật các cơ chế bảo đảm an toàn, quản lý giao dịch và chia sẻ dữ liệu đa người dùng của DBMS.
  • Tích hợp mô hình ER mở rộng (EER): Giáo trình giải quyết thấu đáo các bài toán nghiệp vụ phức tạp bằng các khái niệm chuyên biệt hóa và khái quát hóa, hỗ trợ thiết kế các hệ thống phân cấp mà mô hình ER cổ điển không thể mô tả đầy đủ.
  • Đặt trong tương quan với chuẩn công nghệ hiện hành: So sánh đối chiếu trực tiếp giữa mô hình ER và ngôn ngữ mô hình hóa thống nhất (UML), giải thích rõ ứng dụng của mô hình trong các công cụ hỗ trợ công nghệ phần mềm (CASE) và các hệ thống thương mại như IBM DB2.
  • Đào sâu cơ chế tối ưu hóa truy vấn nội tại: Không dừng lại ở việc viết câu lệnh SQL chạy được, giáo trình dành riêng Chương 9 để phân tích cây đại số quan hệ và thuật toán biến đổi biểu thức nhằm tối ưu hóa hiệu năng xử lý ở mức hệ thống – một nội dung thường bị lược bỏ trong các tài liệu nhập môn cơ bản.
  • Tính ứng dụng cao trong các ngành kinh tế - tài chính: Các bài toán trích xuất từ môi trường ngân hàng, bán lẻ và quản trị dự án giúp sinh viên nắm bắt trực tiếp cách thức dữ liệu vận hành trong môi trường kinh doanh thực tế.

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

Nhóm đối tượng Phạm vi và mục đích sử dụng Yêu cầu kiến thức tiên quyết (Prerequisites)
Sinh viên Đại học (Năm 2 - Năm 3) Nhóm ngành Công nghệ thông tin, Kỹ thuật phần mềm, Khoa học dữ liệu, Hệ thống thông tin quản lý. Sử dụng làm giáo trình chính khóa để hoàn thành học phần Cơ sở dữ liệu. Đã hoàn thành học phần Tin học đại cương, Kỹ thuật lập trình cơ bản và Toán rời rạc (lý thuyết tập hợp, quan hệ, logic).
Sinh viên Khối ngành Kinh tế - Tài chính Chuyên ngành Công nghệ tài chính (Fintech), Ngân hàng số, Thương mại điện tử. Sử dụng để học tập cách thức tổ chức, quản lý và khai thác dữ liệu trong các hệ thống giao dịch. Tin học văn phòng cơ bản, kiến thức nhập môn về quy trình nghiệp vụ kinh tế.
Học viên Cao học & Nghiên cứu sinh Sử dụng làm tài liệu tra cứu các nền tảng hình thức: Đại số quan hệ, Phép tính quan hệ trên bộ/miền, Lý thuyết phụ thuộc hàm và Thuật toán tối ưu hóa cây truy vấn. Kiến thức toàn diện về cấu trúc dữ liệu và giải thuật, đại số tuyến tính và logic toán học.
Giảng viên các trường Đại học Sử dụng làm khung đề cương chi tiết môn học, biên soạn bài giảng lý thuyết, xây dựng hệ thống bài tập thực hành thiết kế dữ liệu và ngân hàng đề thi trắc nghiệm. Chuyên môn sâu về Công nghệ thông tin và Khoa học máy tính.
Kỹ sư phần mềm & Chuyên viên phân tích (BA) Tài liệu tham khảo chuẩn tắc để tra cứu quy tắc thiết kế lược đồ, kỹ thuật chuẩn hóa dữ liệu 3NF/BCNF nhằm tránh lỗi dư thừa trong quá trình phát triển ứng dụng thực tế. Kinh nghiệm lập trình ứng dụng hoặc phân tích nghiệp vụ phần mềm.

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

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

Giáo trình được thiết kế chuẩn hóa cho sinh viên đại học, học viên sau đại học khối ngành Công nghệ thông tin, Hệ thống thông tin quản lý, và sinh viên khối ngành Kinh tế số, Ngân hàng, Tài chính có học phần quản trị cơ sở dữ liệu.

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

Người học cần có kiến thức cơ bản về Tin học đại cương, tư duy lập trình căn bản và đặc biệt là kiến thức Toán rời rạc (gồm lý thuyết tập hợp, quan hệ tương đương, tích Descartes và logic vị từ) để tiếp thu thuận lợi phần Đại số quan hệ và Lý thuyết chuẩn hóa.

3. Giáo trình này có điểm gì khác biệt so với các tài liệu Cơ sở dữ liệu khác?

Điểm khác biệt căn bản là tính nhất quán xuyên suốt: giáo trình sử dụng một cơ sở dữ liệu mẫu (COMPANY) đi qua tất cả các giai đoạn từ mô hình hóa ý niệm, chuyển đổi mô hình quan hệ, viết câu lệnh SQL đến tối ưu hóa; đồng thời chương trình bao hàm đầy đủ cả phần Mô hình mở rộng (EER) và Tối ưu hóa truy vấn bằng cây đại số quan hệ (Chương 9).

4. Làm thế nào để tự học và nghiên cứu giáo trình đạt hiệu quả cao nhất?

Người học nên học tuần tự theo progression logic của sách: nắm chắc các khái niệm lý thuyết trong chương, trả lời toàn bộ câu hỏi trắc nghiệm để củng cố định nghĩa, tự tay vẽ lại các mô hình ER/EER và giải quyết các bài tập thiết kế tình huống (bài toán ngân hàng, bãi đậu xe, cửa hàng linh kiện) trước khi đối chiếu kết quả.

5. Giáo trình có cung cấp các tài liệu bổ trợ hoặc bài tập thực hành không?

Giáo trình cung cấp hệ thống câu hỏi ôn tập tự luận, ngân hàng câu hỏi trắc nghiệm kiến thức, bài tập tình huống thiết kế dữ liệu thực tế ở cuối mỗi chương, cùng danh mục tài liệu tham khảo học thuật chuyên sâu (trang 245) để người học tra cứu mở rộng.


Kết luận

Giáo trình Cơ sở Dữ liệu của nhóm tác giả TS. Trịnh Hoàng Nam, ThS. Nguyễn Thị Trà Linh và ThS. Tạ Thị Hoàng Mai (Trường Đại học Ngân hàng TP. Hồ Chí Minh - NXB Lao Động) là tài liệu học thuật hoàn chỉnh, chuẩn xác về mặt toán học và phương pháp luận kỹ thuật phần mềm. Giá trị cốt lõi của cuốn sách thể hiện ở việc chuẩn hóa toàn bộ tiến trình thiết kế cơ sở dữ liệu: từ trừu tượng hóa mức ý niệm (ER/EER), hình thức hóa luận lý (Đại số quan hệ), hiện thực hóa cài đặt (SQL), đến chuẩn hóa dữ liệu (1NF - BCNF) và tối ưu hóa hiệu năng xử lý.

Lộ trình học tập đề xuất:

  1. Giai đoạn 1 (Ý niệm hóa): Nghiên cứu Chương 1, 2, 3 để làm chủ kỹ thuật phân tích và mô hình hóa dữ liệu thế giới thực bằng ER/EER.
  2. Giai đoạn 2 (Mô hình hóa & Cài đặt): Nghiên cứu Chương 4, 5, 6, 7 để nắm vững mô hình quan hệ, đại số quan hệ, quy tắc ánh xạ lược đồ và thành thạo ngôn ngữ truy vấn SQL.
  3. Giai đoạn 3 (Chuẩn hóa & Tối ưu): Nghiên cứu Chương 8, 9 để thực hiện chuẩn hóa lược đồ dữ liệu tránh dư thừa và áp dụng các thuật toán tối ưu hóa cây truy vấn.

Để mở rộng kiến thức, người học có thể kết hợp nghiên cứu Danh mục tài liệu tham khảo chuyên ngành tại trang 245 của giáo trình nhằm tìm hiểu sâu hơn về kiến trúc cài đặt vật lý của các hệ quản trị cơ sở dữ liệu hiện đại.