Bạn là sinh viên Đại học Bách khoa Hà Nội (HUST) và đang tìm kiếm bộ tài liệu tổng hợp cho môn Hệ quản trị cơ sở dữ liệu (DBMS) bao gồm tiểu luận mẫu, đề cương và đề thi mẫu năm 2025? tailieuonthi.io.vn sẽ giúp bạn với bộ tài liệu độc quyền và cập nhật nhất:
PDF Tiểu luận mẫu – Đề cương – Đề thi mẫu môn Hệ quản trị cơ sở dữ liệu HUST năm 2025. Bộ tài liệu này được biên soạn và tổng hợp đặc biệt dành riêng cho sinh viên Đại học Bách khoa Hà Nội, giúp bạn nắm bắt sát sườn cấu trúc đề thi, nội dung học phần và yêu cầu của các bài tập lớn, tiểu luận. Với tài liệu này, bạn sẽ có cái nhìn tổng quan và chi tiết về môn học, từ đó xây dựng chiến lược ôn tập hiệu quả nhất để đạt điểm cao.

LƯU Ý QUAN TRỌNG TỪ Tài liệu ôn thi – tailieuonthi.io.vn:
- Bộ tài liệu này được tổng hợp từ các nguồn nội bộ và kinh nghiệm thực tế của sinh viên HUST, bao gồm:
- Các mẫu Tiểu luận/Bài tập lớn (BTL) điển hình, có định hướng giải của các khóa gần đây.
- Đề cương chi tiết môn học theo chương trình đào tạo của HUST.
- Các mẫu Đề thi cuối kỳ sát với cấu trúc đề thi HUST năm 2025, kèm theo định hướng giải hoặc đáp án (nếu có).
- Tài liệu được biên soạn và cập nhật liên tục để đảm bảo tính thời sự và phù hợp với chương trình học mới nhất của Đại học Bách khoa Hà Nội.
—
Tại sao bộ tài liệu này cần thiết cho sinh viên HUST?
Môn Hệ quản trị cơ sở dữ liệu là môn học cốt lõi trong khối ngành Công nghệ thông tin, Khoa học Máy tính, Hệ thống thông tin, và các ngành liên quan tại HUST. Việc sở hữu một bộ tài liệu đặc thù cho trường mình sẽ mang lại những lợi ích vượt trội:
- Nắm bắt sát sườn chương trình học của HUST: Đề cương chi tiết giúp bạn hiểu rõ mục tiêu, nội dung từng chương, và cách phân bổ tín chỉ, trọng tâm kiến thức theo chuẩn của Đại học Bách khoa Hà Nội.
- Làm quen với phong cách ra đề của giảng viên HUST: Các đề thi mẫu được biên soạn sát với phong cách ra đề của HUST, giúp bạn nhận diện các dạng bài thường xuất hiện, mức độ khó, và cách ra câu hỏi của các thầy cô trong trường.
- Định hướng làm Tiểu luận/BTL hiệu quả: Các mẫu tiểu luận/BTL cung cấp cấu trúc, nội dung, và cách trình bày mà HUST thường yêu cầu, giúp bạn tiết kiệm thời gian và đạt điểm cao hơn.
- Tối ưu hóa thời gian ôn tập: Thay vì mò mẫm với tài liệu chung, bạn có thể tập trung vào những gì quan trọng và có khả năng xuất hiện trong bài thi, bài tập của HUST, giúp ôn tập hiệu quả hơn.
- Tự tin vượt qua môn học: Khi đã làm quen với các dạng đề và có định hướng làm bài cụ thể, sự tự tin của bạn sẽ tăng lên đáng kể, giúp bạn bình tĩnh và làm bài tốt hơn trong phòng thi.
Để ôn tập toàn diện môn Hệ quản trị cơ sở dữ liệu và các môn chuyên ngành khác, bạn có thể tham khảo thêm:
- Tổng hợp tài liệu ôn tập Hệ quản trị cơ sở dữ liệu
- Kho tài liệu các môn Chuyên ngành
- Tổng hợp Tài liệu Đại học toàn diện
—
Những thách thức khi học và thi Hệ quản trị cơ sở dữ liệu tại HUST
Môn Hệ quản trị cơ sở dữ liệu tại Đại học Bách khoa Hà Nội, với tính chất là một môn học kỹ thuật nền tảng, thường mang lại những thách thức riêng biệt cho sinh viên:
1. Kiến thức chuyên sâu và hàm lượng lý thuyết cao:
- HUST nổi tiếng với chương trình đào tạo nặng về lý thuyết nền tảng. Do đó, môn học không chỉ yêu cầu nắm vững các khái niệm cơ bản mà còn đi sâu vào các thuật toán, kiến trúc bên trong của DBMS (ví dụ: cơ chế lưu trữ, tối ưu hóa truy vấn, điều khiển đồng thời phức tạp).
- Yêu cầu hiểu biết sâu sắc về lý thuyết chuẩn hóa (có thể đến 4NF, 5NF tùy ngành), và khả năng chứng minh các tính chất.
2. Bài tập thực hành SQL phức tạp và đòi hỏi tư duy giải thuật:
- Các bài tập SQL không chỉ dừng lại ở cú pháp mà còn yêu cầu tư duy giải thuật để xây dựng các truy vấn phức tạp, tối ưu về hiệu năng, và sử dụng các tính năng nâng cao như Window Functions, Stored Procedure, Trigger, Cursor.
- Khả năng tự mình tìm ra lỗi (debug) và tối ưu hóa các câu truy vấn là rất quan trọng.
3. Cần kết nối lý thuyết và thực hành:
- Thách thức lớn là áp dụng lý thuyết CSDL (như chuẩn hóa, lý thuyết giao dịch) vào các bài toán thực hành trên các hệ quản trị CSDL cụ thể (SQL Server, Oracle, MySQL).
- Các bài tập lớn thường là dự án mini, yêu cầu sinh viên tự thiết kế CSDL từ đầu đến triển khai, đòi hỏi sự chủ động và khả năng tự học cao.
☠️ Các môn dễ trượt nhóm ngành Khoa học Tự nhiên – Công nghệ
- Toán cao cấp A1 – 29.000đ
- Giải tích 1 – 29.000đ
- Vật lý đại cương – 29.000đ
- Hóa đại cương – 29.000đ
- Lập trình cơ bản (Python/C++) – 35.000đ
- Xác suất thống kê – 29.000đ
- Triết học Mác – Lênin – 25.000đ
—
Cấu trúc đề thi cuối kỳ môn Hệ quản trị cơ sở dữ liệu tại HUST
Dựa trên các đề thi những năm gần đây và định hướng giảng dạy tại Đại học Bách khoa Hà Nội, đề thi cuối kỳ môn Hệ quản trị cơ sở dữ liệu thường có cấu trúc và các dạng bài tập chính sau:
1. Phần Lý thuyết (2-3 điểm):
- Câu hỏi định nghĩa, giải thích chuyên sâu: Các khái niệm cốt lõi về CSDL, DBMS, mô hình quan hệ, các loại khóa (khóa chính, khóa ngoại, khóa ứng cử), các ràng buộc toàn vẹn, các dạng chuẩn hóa (1NF, 2NF, 3NF, BCNF, có thể cả 4NF, 5NF tùy theo chương trình đào tạo và khoa), thuộc tính ACID của giao dịch, chỉ mục (B-tree, B+-tree, Hash Index), View, Stored Procedure, Trigger, Cursor.
- Câu hỏi so sánh, phân biệt: Ví dụ: So sánh giữa các mức độ cô lập (isolation levels) của giao dịch, các kỹ thuật điều khiển đồng thời (Locking, Timestamp, Validation), hoặc các chiến lược tối ưu hóa truy vấn.
- Câu hỏi về kiến trúc và thành phần nội bộ DBMS: Yêu cầu trình bày kiến trúc của một hệ quản trị CSDL điển hình, vai trò của các bộ phận như Query Processor, Storage Manager, Transaction Manager, Buffer Manager.
2. Phần Thiết kế cơ sở dữ liệu và Chuẩn hóa (3-4 điểm):
- Vẽ ERD: Cho một bài toán nghiệp vụ phức tạp với nhiều thực thể, mối quan hệ đa dạng (1-1, 1-N, N-N), thuộc tính đa trị, tổng hợp, thực thể yếu, tổng quát hóa/chuyên biệt hóa. Yêu cầu vẽ mô hình thực thể kết hợp (ERD) đầy đủ và chính xác, có thể có các ràng buộc tham gia (participation constraints) đặc biệt.
- Chuyển đổi ERD sang mô hình quan hệ: Từ ERD đã vẽ, chuyển đổi thành các bảng trong mô hình quan hệ, xác định rõ ràng khóa chính và khóa ngoại, kiểu dữ liệu sơ bộ.
- Chuẩn hóa dữ liệu: Cho một tập hợp các thuộc tính và các phụ thuộc hàm, yêu cầu:
- Tìm tất cả các khóa ứng cử (Candidate Keys).
- Xác định dạng chuẩn cao nhất mà lược đồ quan hệ đang ở.
- Tiến hành phân rã lược đồ quan hệ về dạng chuẩn cao hơn (thường là BCNF hoặc 3NF) sao cho bảo toàn phụ thuộc hàm và không mất thông tin. Phần này yêu cầu lý luận chặt chẽ và chứng minh các bước phân rã.
3. Phần Bài tập SQL (4-5 điểm):
- Các câu lệnh DDL: Viết `CREATE TABLE` với đầy đủ các ràng buộc (PRIMARY KEY, FOREIGN KEY, NOT NULL, UNIQUE, CHECK, DEFAULT), `ALTER TABLE`, `DROP TABLE`, `CREATE INDEX`, `CREATE VIEW`.
- Các câu lệnh DML: `INSERT INTO` (có thể có nhiều bản ghi, từ truy vấn khác), `UPDATE` với điều kiện phức tạp, `DELETE` với điều kiện có Subquery.
- Truy vấn dữ liệu (SELECT) nâng cao và tối ưu: Đây là phần quan trọng nhất, đòi hỏi kỹ năng lập trình SQL thành thạo:
- Truy vấn kết nối (`JOIN`): Sử dụng linh hoạt `INNER JOIN`, `LEFT JOIN`, `RIGHT JOIN`, `FULL JOIN`, `SELF JOIN` để kết nối nhiều bảng (thường là 4-6 bảng trở lên).
- Truy vấn con (`Subquery`): Ứng dụng thành thạo các loại Subquery (Scalar, Correlated, Derived tables) trong `SELECT`, `FROM`, `WHERE`, `HAVING`.
- Các hàm cửa sổ (Window Functions): Sử dụng `ROW_NUMBER()`, `RANK()`, `DENSE_RANK()`, `NTILE()`, `LAG()`, `LEAD()`, `SUM()/AVG() OVER (PARTITION BY … ORDER BY …)` để giải quyết các bài toán xếp hạng, tính toán lũy kế, so sánh giá trị trong nhóm.
- Các câu lệnh `UNION`, `INTERSECT`, `EXCEPT`.
- Viết `STORED PROCEDURE` có tham số, sử dụng cấu trúc điều khiển (IF/ELSE, WHILE), xử lý lỗi (TRY/CATCH).
- Viết `TRIGGER` cho các sự kiện `INSERT`, `UPDATE`, `DELETE`, có thể liên quan đến nhiều bảng và logic phức tạp.
- Các câu hỏi liên quan đến tối ưu hóa truy vấn: Phân tích query plan, gợi ý index, rewrite query để cải thiện hiệu năng.
—
Mẹo ôn tập đạt tín chỉ cao và “cày” GPA học bổng tại HUST
Để đạt điểm cao môn Hệ quản trị cơ sở dữ liệu tại Đại học Bách khoa Hà Nội, bạn cần có chiến lược ôn tập bài bản và tận dụng tối đa bộ tài liệu này:
- Nghiên cứu sâu đề cương môn học và tài liệu giảng viên:
- HUST có chương trình khá nặng về lý thuyết nền tảng. Hãy đọc kỹ từng chương trong đề cương, kết hợp với các bài giảng chi tiết (slide, ghi chú của thầy cô) để nắm vững kiến thức lý thuyết, đặc biệt là các chứng minh và thuật toán.
- Đừng bỏ qua các ví dụ và bài tập mà giảng viên đưa ra trên lớp, đó thường là gợi ý quan trọng cho đề thi và bài tập lớn.
- Phân tích các mẫu Tiểu luận/Bài tập lớn và bài tập thực hành:
- Các bài tập lớn và bài tập thực hành được giao ở HUST thường rất sát với thực tế, có độ khó cao và yêu cầu tư duy hệ thống. Hãy xem xét cách các mẫu giải quyết vấn đề từ phân tích yêu cầu, thiết kế CSDL (ERD, chuẩn hóa) cho đến triển khai SQL hoàn chỉnh và tối ưu.
- Học cách trình bày lời giải một cách khoa học, rõ ràng và đầy đủ lập luận, vì đây là một phần điểm quan trọng trong các môn học của Bách khoa.
- Luyện giải các đề thi mẫu HUST năm 2025 dưới áp lực thời gian:
- Đây là bước cực kỳ quan trọng. In các đề thi ra và tự làm trong điều kiện thời gian thi thật (thường là 90-120 phút). Điều này giúp bạn làm quen với áp lực thời gian, rèn luyện tốc độ làm bài và kỹ năng phân bổ thời gian cho từng phần, đặc biệt là các bài SQL phức tạp.
- Sau khi làm xong, hãy đối chiếu với đáp án (nếu có) hoặc tự kiểm tra kỹ lưỡng. Tập trung vào các câu bạn làm sai hoặc chưa tối ưu và tìm hiểu sâu nguyên nhân gốc rễ.
- Phân tích kỹ lưỡng phong cách ra đề của giảng viên qua các đề mẫu để dự đoán các dạng bài và kiến thức trọng tâm có thể xuất hiện.
- Thực hành SQL trên máy tính một cách nghiêm túc và đa dạng:
- Không chỉ đọc lý thuyết, bạn phải thực sự “code”. Cài đặt một hệ quản trị CSDL mạnh mẽ (ví dụ: SQL Server, Oracle, PostgreSQL) và thực hành tất cả các dạng câu lệnh SQL đã học, từ cơ bản đến nâng cao.
- Tạo các cơ sở dữ liệu phức tạp với dữ liệu mẫu lớn để kiểm thử các truy vấn của mình và kiểm tra hiệu năng.
- Đặc biệt chú trọng luyện tập các bài toán về `JOIN` phức tạp, `Subquery` lồng nhau, `Window Functions`, `Stored Procedure` (có logic điều khiển), `Trigger`.
- Tập debug các lỗi cú pháp và lỗi logic, hiểu rõ thông báo lỗi của hệ thống để khắc phục nhanh chóng.
- Học nhóm và trao đổi chuyên sâu:
- Thảo luận với bạn bè về các bài tập khó, chia sẻ các phương pháp giải quyết vấn đề. Việc giải thích cho người khác sẽ giúp bạn củng cố kiến thức và phát hiện ra những điểm yếu của mình.
- Tham gia các nhóm học tập, diễn đàn online của HUST để hỏi đáp và học hỏi kinh nghiệm từ các anh chị khóa trên.
☠️ Các môn dễ trượt nhóm ngành Khoa học Tự nhiên – Công nghệ
- Toán cao cấp A1 – 29.000đ
- Giải tích 1 – 29.000đ
- Vật lý đại cương – 29.000đ
- Hóa đại cương – 29.000đ
- Lập trình cơ bản (Python/C++) – 35.000đ
- Xác suất thống kê – 29.000đ
- Triết học Mác – Lênin – 25.000đ
—
Trích dẫn một phần demo tài liệu (Mô phỏng Đề cương và Đề thi HUST)
Dưới đây là một phần trích dẫn được mô phỏng theo cấu trúc của bộ tài liệu PDF Tiểu luận mẫu – Đề cương – Đề thi mẫu môn Hệ quản trị cơ sở dữ liệu HUST năm 2025, giúp bạn hình dung về nội dung và cách trình bày:
TRÍCH DẪN ĐỀ MÔ TÀI LIỆU (Đề cương và Đề thi mẫu HUST)
I. Đề cương môn học Hệ quản trị cơ sở dữ liệu (HUST)
Mã môn học: IT3040 (hoặc tương tự)
Số tín chỉ: 3 (2 lý thuyết, 1 thực hành)
Mô tả môn học: Môn học cung cấp các kiến thức lý thuyết nền tảng và kỹ năng thực hành chuyên sâu về cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu. Nội dung bao gồm các mô hình dữ liệu (chủ yếu là mô hình quan hệ), ngôn ngữ SQL nâng cao, lý thuyết thiết kế CSDL (ERD, chuẩn hóa đến BCNF/4NF), kiến trúc nội bộ của DBMS, điều khiển đồng thời, khôi phục, bảo mật và tối ưu hóa truy vấn. Sinh viên sẽ thực hành trên các hệ quản trị CSDL doanh nghiệp lớn.
Mục tiêu môn học:
- Hiểu sâu sắc kiến trúc và cơ chế hoạt động bên trong của DBMS.
- Thành thạo kỹ năng thiết kế CSDL (ERD phức tạp, chuẩn hóa đến BCNF/4NF).
- Làm chủ ngôn ngữ SQL, đặc biệt là các truy vấn phức tạp, Stored Procedure, Trigger, Window Functions.
- Nắm vững các vấn đề về điều khiển đồng thời, khôi phục và bảo mật CSDL ở mức độ chuyên gia.
- Có khả năng phân tích và tối ưu hiệu năng CSDL một cách bài bản.
Nội dung chi tiết (Số tiết lý thuyết/thực hành):
- Chương 1: Tổng quan về CSDL và Hệ quản trị CSDL (4/2)
- Các mô hình dữ liệu, kiến trúc 3 tầng, độc lập dữ liệu.
- Các thành phần chính của DBMS, vai trò của DBA, ngôn ngữ CSDL.
- Chương 2: Mô hình thực thể kết hợp (ERD) và Mô hình quan hệ (8/4)
- Tổng quát hóa/Chuyên biệt hóa, tập thực thể yếu, các ràng buộc tham gia.
- Thiết kế ERD cho các hệ thống lớn, phức tạp.
- Chuyển đổi ERD sang mô hình quan hệ, ánh xạ các ràng buộc.
- Chương 3: Đại số quan hệ và Phép tính quan hệ (4/2)
- Các phép toán Đại số quan hệ, phép tính quan hệ bộ/tên miền.
- Viết các truy vấn bằng Đại số quan hệ và Phép tính quan hệ.
- Chương 4: Ngôn ngữ SQL (DDL, DML, DQL) chuyên sâu (10/8)
- SQL nâng cao: JOINs (tất cả các loại), Subquery (các dạng), CTE, Window Functions.
- Stored Procedure, Function (scalar, table-valued), Trigger, Cursor.
- Kiểm soát giao dịch: COMMIT, ROLLBACK, SAVEPOINT, các cấp độ cô lập.
- Chương 5: Lý thuyết thiết kế CSDL: Chuẩn hóa và Phụ thuộc hàm (8/4)
- Phụ thuộc hàm (FDs), bao đóng, phủ tối thiểu, closure of F.
- Thuật toán tìm khóa, tìm bao đóng thuộc tính.
- Các dạng chuẩn: 1NF, 2NF, 3NF, BCNF, (4NF, 5NF – giới thiệu sâu).
- Thuật toán phân rã bảo toàn phụ thuộc hàm và không mất thông tin.
- Chương 6: Điều khiển đồng thời và Khôi phục (6/3)
- Các vấn đề của đồng thời, tính chất ACID, lịch trình giao dịch.
- Các giao thức điều khiển đồng thời (Locking Two-Phase, Timestamp Ordering, Validation-based).
- Các cơ chế khôi phục CSDL: Write-ahead logging, Checkpoint, Rollback, Rollforward.
- Chương 7: Bảo mật và Tối ưu hóa truy vấn (4/2)
- Cơ chế bảo mật, cấp/thu hồi quyền (GRANT, REVOKE), vai trò, mã hóa.
- Tối ưu hóa truy vấn: Query Plan, Query Cost Estimation, Indexing strategies, Query Rewriting, materialized views.
Đánh giá môn học: Điểm quá trình (40% – chuyên cần, bài tập nhỏ, kiểm tra giữa kỳ, tiểu luận/bài tập lớn), Điểm thi cuối kỳ (60%).
II. Đề thi mẫu cuối kỳ môn Hệ quản trị cơ sở dữ liệu HUST (Năm 2025)
Thời gian: 120 phút
Phần 1: Lý thuyết (3 điểm)
Câu 1 (1.0 điểm): Trình bày và phân tích chi tiết **giao thức khóa 2 pha (Two-Phase Locking Protocol – 2PL)** trong điều khiển đồng thời. Nêu các loại khóa (shared, exclusive), các giai đoạn của 2PL và giải thích tại sao 2PL đảm bảo tính nhất quán.
Câu 2 (1.0 điểm): Cho lược đồ quan hệ $R = (A, B, C, D, E, F)$ và tập phụ thuộc hàm $F = \{A \to BC, E \to CD, AF \to E, C \to D\}$.
a. Tìm tất cả các khóa ứng cử (Candidate Keys) của R. (0.5 điểm)
b. Xác định dạng chuẩn cao nhất mà R đang ở. Nếu R chưa ở dạng BCNF, hãy phân rã R về dạng BCNF sao cho bảo toàn phụ thuộc hàm. (0.5 điểm)
Câu 3 (1.0 điểm): Giải thích sự khác biệt giữa **chỉ mục B-tree (B-tree Index)** và **chỉ mục băm (Hash Index)**. Trong những trường hợp truy vấn nào thì mỗi loại chỉ mục này sẽ phát huy hiệu quả tốt nhất?
Phần 2: Thiết kế cơ sở dữ liệu (3 điểm)
Bài tập 1 (3.0 điểm): Một hệ thống quản lý thư viện phức tạp cho trường đại học cần được thiết kế.
- Mỗi Độc giả có: Mã độc giả (duy nhất), Họ tên, Ngày sinh, Địa chỉ, Email, Số điện thoại. Độc giả có thể là Sinh viên hoặc Giảng viên.
- Nếu là Sinh viên: thêm Mã sinh viên, Lớp, Ngành.
- Nếu là Giảng viên: thêm Mã giảng viên, Khoa, Chức vụ.
- Mỗi Ấn phẩm (sách, tạp chí, luận văn) có: Mã ấn phẩm (duy nhất), Tên ấn phẩm, Năm xuất bản, Số lượng tổng cộng. Ấn phẩm có thể là Sách hoặc Tạp chí hoặc Luận văn.
- Nếu là Sách: thêm Tác giả, Nhà xuất bản, ISBN.
- Nếu là Tạp chí: thêm Tên tạp chí, Kỳ xuất bản.
- Nếu là Luận văn: thêm Tên người hướng dẫn, Ngành.
- Mỗi Ấn phẩm có nhiều Bản sao. Mỗi bản sao có: Mã bản sao (duy nhất trong phạm vi ấn phẩm), Tình trạng (Mới, Cũ, Hỏng), Vị trí lưu trữ.
- Độc giả có thể Mượn các Bản sao. Cần lưu thông tin về Ngày mượn, Ngày trả dự kiến, Ngày trả thực tế. Một bản sao chỉ có thể được mượn bởi một độc giả tại một thời điểm.
- Hệ thống cần quản lý các Đề xuất mua ấn phẩm mới từ độc giả. Mỗi đề xuất có: Mã đề xuất (PK), Tên ấn phẩm đề xuất, Tác giả/Nhà xuất bản (nếu có), Ngày đề xuất, Trạng thái (Chờ duyệt, Đã duyệt, Đã từ chối).
Yêu cầu:
- Vẽ **Mô hình thực thể kết hợp (ERD)** cho hệ thống trên, xác định rõ các thực thể, thuộc tính (bao gồm thuộc tính khóa, đa trị, tổng hợp nếu có), mối quan hệ (loại mối quan hệ, bản số, vai trò), và đặc tả đầy đủ các ràng buộc (participation, disjoint, overlapping) cho các mối quan hệ tổng quát hóa/chuyên biệt hóa. (1.5 điểm)
- Chuyển đổi **ERD sang Mô hình quan hệ** (tập hợp các bảng), xác định rõ ràng khóa chính và khóa ngoại của từng bảng, kèm theo kiểu dữ liệu, các ràng buộc toàn vẹn cơ bản (NOT NULL, UNIQUE, CHECK, DEFAULT) phù hợp với SQL Server. (1.5 điểm)
Phần 3: Bài tập SQL (4 điểm)
Cho các lược đồ quan hệ và dữ liệu mẫu sau (giả định dùng SQL Server):
-- Bảng DOCGIA (Tổng quát)
DOCGIA(MaDG, HoTenDG, NgaySinh, DiaChi, Email, SDT, LoaiDG) -- LoaiDG: 'SV', 'GV'
-- Bảng SINHVIEN (Chuyên biệt)
SINHVIEN(MaDG_FK_PK, MaSV, Lop, Nganh) -- MaSV là mã riêng của sinh viên
-- Bảng GIANGVIEN (Chuyên biệt)
GIANGVIEN(MaDG_FK_PK, MaGV, Khoa, ChucVu) -- MaGV là mã riêng của giảng viên
-- Bảng ANPHAM (Tổng quát)
ANPHAM(MaAP, TenAP, NamXuatBan, SoLuongTongCong, LoaiAP) -- LoaiAP: 'Sach', 'TapChi', 'LuanVan'
-- Bảng SACH (Chuyên biệt)
SACH(MaAP_FK_PK, TacGia, NhaXuatBan, ISBN)
-- Bảng TAPCHI (Chuyên biệt)
TAPCHI(MaAP_FK_PK, TenTapChi, KyXuatBan)
-- Bảng LUANVAN (Chuyên biệt)
LUANVAN(MaAP_FK_PK, TenNguoiHuongDan, NganhLV)
-- Bảng BANSAO
BANSAO(MaAP_FK, MaBS, TinhTrang, ViTriLuuTru) -- MaBS duy nhất trong phạm vi MaAP
-- Bảng MUON_TRA
MUON_TRA(MaDG_FK, MaAP_FK, MaBS_FK, NgayMuon, NgayTraDuKien, NgayTraThucTe)
-- Bảng DEXUAT_MUA
DEXUAT_MUA(MaDX, TenAPDX, TacGiaNXB, NgayDeXuat, TrangThai)
-- Dữ liệu mẫu (sẽ được cung cấp chi tiết trong đề thi thật)
Yêu cầu: Viết các câu lệnh SQL để thực hiện các truy vấn sau:
Bài tập 2.1 (1.0 điểm): Liệt kê tên của 3 độc giả (gồm cả sinh viên và giảng viên) đã mượn nhiều bản sao nhất trong năm 2024. Hiển thị Họ tên độc giả, loại độc giả và tổng số bản sao đã mượn. Sử dụng Window Function.
Bài tập 2.2 (1.0 điểm): Tìm tên các ấn phẩm (Sách, Tạp chí, Luận văn) mà hiện tại không có bản sao nào đang được mượn. Hiển thị tên ấn phẩm và loại ấn phẩm. (Ấn phẩm có bản sao nhưng không ai mượn, hoặc không có bản sao nào).
Bài tập 2.3 (1.0 điểm): Viết một `STORED PROCEDURE` có tên `SP_BaoCaoViPhamTraMuon` nhận vào một ngày bất kỳ `@NgayBaoCao` làm tham số. Thủ tục này sẽ trả về danh sách các độc giả (Mã độc giả, Họ tên, Email, SDT) có ít nhất một bản sao chưa trả hoặc đã trả muộn tính đến `@NgayBaoCao`. Kèm theo số lượng bản sao chưa trả/trả muộn của độc giả đó.
Bài tập 2.4 (1.0 điểm): Tạo một `TRIGGER` trên bảng `BANSAO` có tên `TR_CapNhatSoLuongAnPham`. Khi có bất kỳ sự thay đổi nào (INSERT, UPDATE, DELETE) liên quan đến số lượng bản sao của một ấn phẩm (tức là thêm/bớt/cập nhật bản sao), `TRIGGER` này sẽ tự động cập nhật lại trường `SoLuongTongCong` trong bảng `ANPHAM` tương ứng. (Tính cả số lượng bản sao đang có, không cần phân biệt tình trạng)
…
ĐÁP ÁN THAM KHẢO (Đề thi mẫu 2025)
Phần 1: Lý thuyết
Câu 1: (Đáp án chi tiết về giao thức khóa 2 pha)
Câu 2:
a. (Hướng dẫn tìm khóa ứng cử)
b. (Hướng dẫn xác định dạng chuẩn và phân rã về BCNF)
Câu 3: (Đáp án chi tiết về chỉ mục B-tree và Hash Index)
Phần 2: Thiết kế cơ sở dữ liệu
Bài tập 1:
1. ERD: (Hình ảnh ERD minh họa hệ thống quản lý thư viện phức tạp, có các mối quan hệ tổng quát hóa/chuyên biệt hóa, mối quan hệ đa-đa)
2. Mô hình quan hệ:
DOCGIA (MaDG, HoTenDG, NgaySinh, DiaChi, Email, SDT, LoaiDG)
SINHVIEN (MaDG_FK_PK, MaSV_DuyNhat, Lop, Nganh)
GIANGVIEN (MaDG_FK_PK, MaGV_DuyNhat, Khoa, ChucVu)
ANPHAM (MaAP, TenAP, NamXuatBan, SoLuongTongCong, LoaiAP)
SACH (MaAP_FK_PK, TacGia, NhaXuatBan, ISBN)
TAPCHI (MaAP_FK_PK, TenTapChi, KyXuatBan)
LUANVAN (MaAP_FK_PK, TenNguoiHuongDan, NganhLV)
BANSAO (MaAP_FK_PK, MaBS_PK, TinhTrang, ViTriLuuTru)
MUON_TRA (MaDG_FK_PK, MaAP_FK_PK, MaBS_FK_PK, NgayMuon, NgayTraDuKien, NgayTraThucTe)
DEXUAT_MUA (MaDX, TenAPDX, TacGiaNXB, NgayDeXuat, TrangThai)
…
Phần 3: Bài tập SQL
Bài tập 2.1:
WITH SoLuongMuon AS (
SELECT MaDG, COUNT(*) AS TongSoMuon
FROM MUON_TRA
WHERE YEAR(NgayMuon) = 2024
GROUP BY MaDG
),
XepHangDocGia AS (
SELECT
DG.HoTenDG,
DG.LoaiDG,
SLM.TongSoMuon,
ROW_NUMBER() OVER (ORDER BY SLM.TongSoMuon DESC) AS RN
FROM DOCGIA DG
JOIN SoLuongMuon SLM ON DG.MaDG = SLM.MaDG
)
SELECT HoTenDG, LoaiDG, TongSoMuon
FROM XepHangDocGia
WHERE RN <= 3;
Giải thích: CTE `SoLuongMuon` tính tổng số lượt mượn của mỗi độc giả trong năm 2024. CTE `XepHangDocGia` sau đó sử dụng `ROW_NUMBER()` để xếp hạng độc giả theo tổng số lượt mượn giảm dần và lấy ra top 3.
Bài tập 2.2:
SELECT AP.TenAP, AP.LoaiAP
FROM ANPHAM AP
LEFT JOIN BANSAO BS ON AP.MaAP = BS.MaAP
LEFT JOIN MUON_TRA MT ON BS.MaAP = MT.MaAP AND BS.MaBS = MT.MaBS AND MT.NgayTraThucTe IS NULL -- Chỉ lấy bản sao đang được mượn
GROUP BY AP.MaAP, AP.TenAP, AP.LoaiAP
HAVING COUNT(MT.MaDG_FK) = 0; -- Không có bản sao nào đang được mượn
Giải thích: Truy vấn này sử dụng `LEFT JOIN` với bảng `BANSAO` và `MUON_TRA` để tìm các ấn phẩm mà không có bản sao nào đang được mượn (NgayTraThucTe IS NULL). `GROUP BY` ấn phẩm và `HAVING COUNT(MT.MaDG_FK) = 0` để lọc ra các ấn phẩm không có bản sao nào đang trong tình trạng mượn.
Bài tập 2.3:
-- Đối với SQL Server
CREATE PROCEDURE SP_BaoCaoViPhamTraMuon
@NgayBaoCao DATE
AS
BEGIN
SET NOCOUNT ON;
SELECT
DG.MaDG,
DG.HoTenDG,
DG.Email,
DG.SDT,
COUNT(MT.MaBS_FK) AS SoLuongViPham
FROM DOCGIA DG
JOIN MUON_TRA MT ON DG.MaDG = MT.MaDG
WHERE MT.NgayTraThucTe IS NULL AND MT.NgayTraDuKien < @NgayBaoCao -- Chưa trả và quá hạn OR (MT.NgayTraThucTe IS NOT NULL AND MT.NgayTraThucTe > MT.NgayTraDuKien AND MT.NgayTraThucTe <= @NgayBaoCao) -- Đã trả nhưng muộn GROUP BY DG.MaDG, DG.HoTenDG, DG.Email, DG.SDT HAVING COUNT(MT.MaBS_FK) > 0;
END;
-- Cách gọi: EXEC SP_BaoCaoViPhamTraMuon '2025-08-03';
Giải thích: Thủ tục này lọc các bản ghi `MUON_TRA` để tìm các trường hợp vi phạm: hoặc chưa trả và quá hạn (`NgayTraThucTe IS NULL AND NgayTraDuKien < @NgayBaoCao`), hoặc đã trả nhưng muộn và thời điểm trả muộn nằm trong khoảng thời gian báo cáo (`NgayTraThucTe IS NOT NULL AND NgayTraThucTe > NgayTraDuKien AND NgayTraThucTe <= @NgayBaoCao`). Sau đó nhóm theo độc giả và đếm số lượng vi phạm.
Bài tập 2.4:
-- Đối với SQL Server
CREATE TRIGGER TR_CapNhatSoLuongAnPham
ON BANSAO
AFTER INSERT, UPDATE, DELETE
AS
BEGIN
SET NOCOUNT ON;
-- Cập nhật cho các ấn phẩm có bản sao được INSERT/UPDATED
UPDATE AP
SET SoLuongTongCong = (SELECT COUNT(*)
FROM BANSAO BS
WHERE BS.MaAP = AP.MaAP)
FROM ANPHAM AP
INNER JOIN inserted i ON AP.MaAP = i.MaAP;
-- Cập nhật cho các ấn phẩm có bản sao bị DELETED
UPDATE AP
SET SoLuongTongCong = (SELECT COUNT(*)
FROM BANSAO BS
WHERE BS.MaAP = AP.MaAP)
FROM ANPHAM AP
INNER JOIN deleted d ON AP.MaAP = d.MaAP;
END;
Giải thích: Trigger này được kích hoạt sau `INSERT`, `UPDATE` hoặc `DELETE` trên bảng `BANSAO`. Nó sử dụng các bảng ảo `inserted` và `deleted` để xác định các ấn phẩm bị ảnh hưởng. Sau đó, trigger sẽ tính toán lại tổng số lượng bản sao hiện có cho từng ấn phẩm và cập nhật vào cột `SoLuongTongCong` của bảng `ANPHAM`.
…
—
Câu chuyện thành công – Chinh phục Hệ quản trị cơ sở dữ liệu tại HUST
Dưới đây là 3 câu chuyện truyền cảm hứng từ các sinh viên của Đại học Bách khoa Hà Nội (HUST), những người đã xuất sắc đạt điểm cao trong môn Hệ quản trị cơ sở dữ liệu nhờ chiến lược ôn tập thông minh và tận dụng tài liệu phù hợp:
1. Em Nguyễn Thanh Tùng (Viện Công nghệ thông tin và Truyền thông – Đạt A+) – Làm chủ từ lý thuyết đến thực tiễn
“Tùng là sinh viên năm 3 Viện CNTT&TT, HUST. Môn Hệ quản trị cơ sở dữ liệu luôn là một thách thức lớn với hàm lượng kiến thức chuyên sâu. Em đã học rất kỹ phần lý thuyết trong đề cương, đặc biệt là các thuật toán điều khiển đồng thời và cơ chế tối ưu truy vấn. Bộ tài liệu của tailieuonthi.io.vn cung cấp các đề thi mẫu và tiểu luận với độ khó rất sát với đề thi HUST, đặc biệt là các bài SQL phức tạp và các bài toán chuẩn hóa đòi hỏi tư duy logic cao. Em không chỉ giải được mà còn tự mình tìm hiểu thêm về cách tối ưu hóa hiệu năng và triển khai trên các hệ thống lớn. Nhờ đó, em đã đạt A+ và cảm thấy mình đã có nền tảng vững chắc để phát triển sự nghiệp trong lĩnh vực cơ sở dữ liệu.”
2. Em Lê Minh Phương (Viện Toán ứng dụng và Tin học – Đạt A) – Tư duy chặt chẽ, giải pháp hiệu quả
“Phương, sinh viên năm 3 Viện Toán ứng dụng và Tin học. Với tư duy logic được rèn luyện từ các môn toán, em thấy môn HQTCSDL rất thú vị. Các mẫu bài tập lớn trong tài liệu giúp em hệ thống hóa quy trình thiết kế CSDL từ phân tích yêu cầu đến triển khai. Em dành nhiều thời gian để giải các bài tập chuẩn hóa, đặc biệt là BCNF và 4NF, cũng như các bài toán SQL khó yêu cầu sử dụng truy vấn con lồng nhau và Window Functions. Em đã đạt A và giờ đây rất tự tin khi đối mặt với các bài toán liên quan đến dữ liệu trong các môn học khác và các dự án thực tế.”
3. Em Đặng Văn Duy (Viện Cơ khí – Đạt B+) – Áp dụng CSDL vào lĩnh vực kỹ thuật
“Duy là sinh viên năm 3 Viện Cơ khí. Dù không phải chuyên ngành IT, nhưng em nhận ra CSDL rất quan trọng trong việc quản lý dữ liệu thiết kế, sản xuất. Em đã tập trung vào việc nắm vững các khái niệm cơ bản, cách thiết kế ERD cho các hệ thống quản lý linh kiện, sản phẩm và các câu lệnh SQL cơ bản đến nâng cao trong đề cương và đề thi mẫu HUST. Các mẫu tiểu luận cũng giúp em hình dung cách xây dựng một CSDL hoàn chỉnh. Dù không đạt điểm A+, nhưng B+ là một kết quả đáng khích lệ đối với em. Em giờ đây có thể tự tin áp dụng kiến thức CSDL để xây dựng các hệ thống quản lý dữ liệu nhỏ trong lĩnh vực cơ khí của mình.”
—
Câu hỏi thường gặp (FAQ) về PDF Tiểu luận mẫu – Đề cương – Đề thi mẫu Hệ quản trị cơ sở dữ liệu HUST
- Bộ tài liệu này có phải là tài liệu chính thức từ Đại học Bách khoa Hà Nội không?Bộ tài liệu này được tổng hợp từ các nguồn tài liệu nội bộ, kinh nghiệm thi cử của các sinh viên khóa trước tại Đại học Bách khoa Hà Nội và được biên soạn lại một cách có hệ thống bởi tailieuonthi.io.vn. Đây không phải là tài liệu chính thức do nhà trường phát hành, nhưng đảm bảo tính sát thực và hữu ích cho việc ôn tập.
- Các đề thi mẫu có đáp án chi tiết không?Các đề thi mẫu trong tài liệu sẽ có định hướng giải hoặc đáp án chi tiết (tùy theo từng đề và nguồn tổng hợp), giúp bạn hiểu rõ cách giải quyết vấn đề và so sánh kết quả của mình.
- Tài liệu có được cập nhật cho năm học 2025 không?tailieuonthi.io.vn cam kết cập nhật tài liệu thường xuyên để bám sát nhất với chương trình đào tạo và xu hướng ra đề thi của Đại học Bách khoa Hà Nội. Phiên bản bạn đang tìm kiếm là cho năm học 2025, đã bao gồm các dạng đề thi mẫu mới nhất.
- Tôi có thể tải tài liệu này ở đâu?Bạn có thể truy cập trực tiếp các đường link trên website tailieuonthi.io.vn/on-tap-he-quan-tri-co-so-du-lieu/. Tại đó, bạn sẽ tìm thấy thông tin chi tiết về bộ tài liệu và hướng dẫn cách tải hoặc mua.
- Việc luyện tập với đề thi mẫu có thực sự hiệu quả?Rất hiệu quả! Mặc dù đề thi có thể thay đổi nhỏ theo từng năm, nhưng cấu trúc, dạng bài tập và các kiến thức trọng tâm thường được giữ ổn định. Việc luyện tập với đề thi mẫu giúp bạn làm quen với áp lực thời gian, nhận diện các dạng bài quen thuộc, và củng cố kiến thức một cách có hệ thống.
- Tiểu luận mẫu có giúp tôi tránh đạo văn không?Các mẫu tiểu luận được cung cấp với mục đích tham khảo cấu trúc, cách phân tích và trình bày. Bạn tuyệt đối không nên sao chép nguyên văn nội dung. Hãy sử dụng chúng để định hướng, lấy ý tưởng và sau đó tự mình phát triển bài làm dựa trên yêu cầu đề bài của bạn, đảm bảo tính nguyên bản và sáng tạo.


