Trắc Nghiệm Hệ Quản Trị Cơ Sở Dữ Liệu TDTU là bộ đề ôn tập thiết yếu thuộc môn Hệ Quản Trị Cơ Sở Dữ Liệu, nằm trong chương trình đào tạo Công nghệ Thông tin tại Trường Đại học Tôn Đức Thắng (TDTU). Đề thi đại học được xây dựng bởi ThS. Trần Quốc Bảo, giảng viên Khoa Công nghệ Thông tin – Đại học Tôn Đức Thắng, năm 2024. Nội dung bộ đề tập trung kiểm tra các kiến thức về hệ quản trị cơ sở dữ liệu (DBMS), mô hình dữ liệu, ngôn ngữ truy vấn SQL, các nguyên tắc bảo mật và tối ưu hóa hệ thống, cùng các kỹ năng xử lý tình huống thực tiễn trong quản trị dữ liệu.
Trắc Nghiệm Hệ Quản Trị Cơ Sở Dữ Liệu trên dethitracnghiem.vn là bộ đề trắc nghiệm đại học hữu ích, hỗ trợ sinh viên TDTU và các trường đại học khác luyện tập, tự kiểm tra và củng cố kiến thức hiệu quả. Các câu hỏi được phân loại từ cơ bản đến nâng cao, giao diện thân thiện, đi kèm đáp án cùng giải thích chi tiết. Nhờ vậy, sinh viên dễ dàng làm quen với cấu trúc đề thi thực tế, nhận diện điểm mạnh – điểm yếu, đồng thời tối ưu hóa kết quả học tập trong môn Hệ Quản Trị Cơ Sở Dữ Liệu.
Hãy cùng dethitracnghiem.vn khám phá đề thi này và thử sức ngay hôm nay!
Trắc Nghiệm Hệ Quản Trị Cơ Sở Dữ Liệu SQL Đại học TDTU
Câu 1. Mục đích chính của việc phân chia kiến trúc hệ cơ sở dữ liệu thành ba mức (vật lý, quan niệm, ngoài) là gì?
A. Để làm tăng tốc độ xử lý của các câu lệnh cập nhật dữ liệu.
B. Để làm giảm thiểu dung lượng lưu trữ cần thiết cho siêu dữ liệu.
C. Để đạt được tính độc lập dữ liệu, cho phép thay đổi ở một mức không ảnh hưởng mức khác.
D. Để đơn giản hóa việc viết ứng dụng bằng cách loại bỏ mức quan niệm.
Câu 2. Trong SQL, khi thực hiện SELECT * FROM SinhVien LEFT JOIN Lop ON SinhVien.MaLop = Lop.MaLop;, điều gì sẽ xảy ra với những sinh viên có MaLop không tồn tại trong bảng Lop?
A. Những sinh viên đó sẽ không được hiển thị trong kết quả cuối cùng.
B. Câu lệnh sẽ báo lỗi vì vi phạm ràng buộc toàn vẹn tham chiếu.
C. Các sinh viên đó vẫn hiển thị, nhưng các cột từ bảng Lop sẽ có giá trị NULL.
D. Chỉ những sinh viên có lớp tương ứng trong bảng Lop mới được trả về.
Câu 3. Xét một lược đồ quan hệ CHI_TIET_DON_HANG(SoDonHang, MaSanPham, SoLuong, DonGia, TenSanPham). Giả sử khóa chính là {SoDonHang, MaSanPham} và có phụ thuộc hàm MaSanPham -> TenSanPham. Lược đồ này đang ở dạng chuẩn nào và tại sao?
A. Lược đồ đã ở dạng chuẩn 3NF vì không tồn tại phụ thuộc hàm bắc cầu.
B. Vi phạm 2NF vì thuộc tính không khóa phụ thuộc vào một phần của khóa chính.
C. Lược đồ chỉ ở dạng chuẩn 1NF vì chứa các thuộc tính có thể là đa trị.
D. Lược đồ vi phạm BCNF nhưng vẫn đảm bảo đã đạt được dạng chuẩn 3NF.
Câu 4. Việc sử dụng chỉ mục (index) giúp tăng tốc đáng kể các truy vấn đọc. Tuy nhiên, trong trường hợp nào dưới đây, việc tạo thêm chỉ mục trên một bảng lại không phải là một quyết định tối ưu?
A. Khi bảng có dữ liệu lớn và thường xuyên được truy vấn để đọc thông tin.
B. Khi bảng có tần suất ghi cao và số lượng bản ghi thấp, gây tốn chi phí bảo trì.
C. Khi cột được dùng để đánh chỉ mục có nhiều giá trị duy nhất (lực lượng cao).
D. Khi bảng thường được sử dụng trong các phép nối (JOIN) với các bảng lớn khác.
Câu 5. Trong quản lý giao dịch đồng thời, cơ chế khóa chia sẻ (Shared Lock – S) và khóa độc quyền (Exclusive Lock – X) hoạt động như thế nào?
A. Nhiều giao dịch có thể cùng giữ khóa X, nhưng chỉ một giao dịch giữ khóa S.
B. Khóa S cho phép cả đọc và ghi, trong khi khóa X chỉ cho phép thao tác đọc.
C. Nhiều giao dịch có thể cùng giữ khóa S (đọc), nhưng chỉ một được giữ khóa X (ghi).
D. Một khi đối tượng bị khóa S, không giao dịch nào khác có thể yêu cầu khóa X.
Câu 6. Đâu là phát biểu đúng nhất khi so sánh mô hình cơ sở dữ liệu quan hệ (Relational) và mô hình NoSQL dạng tài liệu (Document-based)?
A. Mô hình quan hệ linh hoạt hơn khi lưu trữ dữ liệu không có cấu trúc cố định.
B. Quan hệ có cấu trúc nghiêm ngặt, trong khi mô hình tài liệu linh hoạt hơn về cấu trúc.
C. Cơ sở dữ liệu NoSQL luôn cho tốc độ nhanh hơn SQL trong mọi trường hợp.
D. Mô hình quan hệ không hỗ trợ các giao dịch, trong khi mô hình NoSQL thì có.
Câu 7. Một người quản trị cơ sở dữ liệu (DBA) thực hiện câu lệnh GRANT UPDATE(SoDu) ON TAI_KHOAN TO GiaoDichVien;. Ý nghĩa của hành động này là gì?
A. Cấp cho người dùng GiaoDichVien toàn bộ quyền trên bảng TAI_KHOAN.
B. Chỉ cấp quyền cập nhật trên cột SoDu của bảng TAI_KHOAN cho GiaoDichVien.
C. Cho phép người dùng GiaoDichVien xem được dữ liệu của cột SoDu.
D. Thu hồi lại quyền cập nhật trên cột SoDu từ người dùng GiaoDichVien.
Câu 8. Câu lệnh TRUNCATE TABLE NhanVien; có đặc điểm nào mà DELETE FROM NhanVien; không có?
A. Lệnh này có khả năng kích hoạt các trigger loại AFTER DELETE trên bảng.
B. Lệnh này có thể được sử dụng với mệnh đề WHERE để xóa có điều kiện.
C. Lệnh này là một thao tác có thể được quay lui (rollback) một cách dễ dàng.
D. Là DDL, không ghi nhật ký từng hàng và reset identity nên thực thi rất nhanh.
Câu 9. Một “View” (khung nhìn) trong cơ sở dữ liệu được tạo từ một câu lệnh SELECT. Lợi ích chính của việc cho người dùng cuối truy cập dữ liệu thông qua View thay vì bảng gốc là gì?
A. Luôn làm cho câu truy vấn chạy nhanh hơn vì dữ liệu đã được tính toán sẵn.
B. Cung cấp lớp trừu tượng, đơn giản hóa truy vấn và tăng cường bảo mật dữ liệu.
C. Luôn chứa một bản sao vật lý của dữ liệu, giúp làm giảm tải cho bảng gốc.
D. Cho phép thực hiện các thao tác INSERT, UPDATE, DELETE dễ dàng hơn bảng gốc.
Câu 10. Trong đại số quan hệ, phép chọn (Selection, ký hiệu σ) thực hiện chức năng gì?
A. Lọc và trả về một tập hợp con các hàng (bộ) thỏa mãn một điều kiện cho trước.
B. Chọn ra một tập hợp con các cột (thuộc tính) từ một quan hệ ban đầu.
C. Thực hiện việc kết hợp các hàng từ hai quan hệ khác nhau lại với nhau.
D. Thực hiện việc đổi tên một quan hệ hoặc các thuộc tính bên trong nó.
Câu 11. Tính nhất quán (Consistency) trong bộ thuộc tính ACID của một giao dịch có nghĩa là gì?
A. Một khi giao dịch đã commit, các thay đổi của nó sẽ tồn tại vĩnh viễn.
B. Mỗi giao dịch được thực thi một cách độc lập với các giao dịch khác.
C. Đảm bảo CSDL luôn ở trạng thái hợp lệ, tuân thủ mọi ràng buộc trước và sau giao dịch.
D. Giao dịch phải được thực hiện một cách trọn vẹn hoặc không có gì cả.
Câu 12. Khi nào thì nên xem xét việc “phi chuẩn hóa” (denormalization) một thiết kế cơ sở dữ liệu đã được chuẩn hóa?
A. Khi mục tiêu chính là tiết kiệm tối đa không gian lưu trữ trên đĩa cứng.
B. Khi muốn đảm bảo tính toàn vẹn và nhất quán của dữ liệu ở mức cao nhất.
C. Khi cần cải thiện hiệu năng đọc bằng cách giảm JOIN, chấp nhận dư thừa dữ liệu.
D. Khi cơ sở dữ liệu có tần suất các thao tác cập nhật dữ liệu rất lớn.
Câu 13. Trong SQL, mệnh đề HAVING được dùng để làm gì?
A. Để lọc kết quả sau khi các hàng đã được nhóm lại bởi mệnh đề GROUP BY.
B. Để lọc các hàng riêng lẻ của bảng trước khi thực hiện việc nhóm dữ liệu.
C. Để thực hiện việc sắp xếp các nhóm đã được tạo ra bởi mệnh đề GROUP BY.
D. Mệnh đề này có chức năng và cách dùng hoàn toàn tương tự mệnh đề WHERE.
Câu 14. Một chỉ mục Bitmap (Bitmap Index) thường được sử dụng hiệu quả nhất trong trường hợp nào?
A. Trên các cột có giá trị duy nhất hoặc gần như duy nhất như cột mã sinh viên.
B. Trên các cột có lực lượng thấp (ít giá trị riêng biệt) trong môi trường kho dữ liệu.
C. Trên các cột có kiểu dữ liệu là TEXT hoặc BLOB để phục vụ tìm kiếm văn bản.
D. Trên các bảng có tần suất các thao tác cập nhật (UPDATE) rất cao và thường xuyên.
Câu 15. Điều gì phân biệt một khóa ứng viên (candidate key) với các thuộc tính thông thường khác trong một lược đồ quan hệ?
A. Nó luôn luôn là một thuộc tính có kiểu dữ liệu số nguyên và tự động tăng.
B. Nó là một tập thuộc tính tối thiểu có thể xác định duy nhất mỗi bộ trong quan hệ.
C. Nó là thuộc tính được sử dụng để thiết lập liên kết đến một bảng khác.
D. Bất kỳ thuộc tính nào của bảng được đánh chỉ mục (index) đều là khóa ứng viên.
Câu 16. Kỹ thuật phục hồi cơ sở dữ liệu dựa trên nhật ký (Log-based Recovery) với phương pháp “Deferred Update” (cập nhật trì hoãn) hoạt động như thế nào?
A. Ghi trực tiếp các thay đổi vào cơ sở dữ liệu và đồng thời ghi vào tệp nhật ký.
B. Ghi thay đổi vào nhật ký trước, chỉ cập nhật CSDL sau khi giao dịch đã commit.
C. Không sử dụng tệp nhật ký mà thay vào đó dùng kỹ thuật các trang bóng.
D. Chỉ thực hiện việc ghi vào tệp nhật ký các thao tác hoàn tác (UNDO).
Câu 17. Trong mô hình thực thể-kết hợp (ER), mối quan hệ “đệ quy” (recursive relationship) là gì?
A. Là một mối quan hệ có sự tham gia của ba hoặc nhiều loại thực thể khác nhau.
B. Là mối quan hệ trong đó các thực thể của cùng một loại có liên quan đến nhau.
C. Là một mối quan hệ yếu, sự tồn tại của nó phụ thuộc vào một thực thể mạnh.
D. Là một loại thực thể chỉ tồn tại khi được liên kết với một thực thể khác.
Câu 18. Tối ưu hóa truy vấn dựa trên quy tắc (Rule-Based Optimization) hoạt động dựa trên nguyên tắc nào?
A. Ước tính chi phí (số I/O) của mỗi kế hoạch và chọn kế hoạch có chi phí rẻ nhất.
B. Luôn ưu tiên thực hiện quét toàn bộ bảng để đảm bảo tính chính xác tuyệt đối.
C. Áp dụng một tập các quy tắc heuristic để biến đổi truy vấn, không dựa vào thống kê.
D. Phân tích các câu truy vấn đã được chạy trước đó để tìm ra kế hoạch tối ưu.
Câu 19. Câu lệnh SQL nào dùng để xóa một chỉ mục khỏi một bảng?
A. Cú pháp `DELETE INDEX index_name ON table_name;`
B. Cú pháp `REMOVE INDEX index_name FROM table_name;`
C. Cú pháp `ALTER TABLE table_name DROP INDEX index_name;`
D. Cú pháp DROP INDEX hoặc ALTER TABLE…DROP INDEX tùy thuộc vào từng hệ CSDL.
Câu 20. Một thuộc tính được gọi là thuộc tính suy dẫn (derived attribute) khi:
A. Là thuộc tính có thể được chia thành các thuộc tính con nhỏ hơn và có ý nghĩa.
B. Là thuộc tính có thể chứa nhiều hơn một giá trị cho một thực thể duy nhất.
C. Giá trị của nó có thể được tính toán hoặc suy ra từ một hay nhiều thuộc tính khác.
D. Là một thuộc tính tham gia vào trong khóa chính của một lược đồ quan hệ.
Câu 21. Sự khác biệt cơ bản giữa ROW-LEVEL TRIGGER và STATEMENT-LEVEL TRIGGER là gì?
A. ROW trigger kích hoạt mỗi hàng bị ảnh hưởng, STATEMENT trigger kích hoạt mỗi câu lệnh.
B. ROW-LEVEL trigger chỉ được sử dụng cho lệnh INSERT, STATEMENT trigger cho UPDATE.
C. STATEMENT-LEVEL trigger nhanh hơn nhưng không thể truy cập dữ liệu của các hàng.
D. Chỉ có duy nhất ROW-LEVEL trigger mới có khả năng gọi các thủ tục lưu trữ khác.
Câu 22. Trong các chiến lược xử lý bế tắc (deadlock), phương pháp “phát hiện và phục hồi” (detection and recovery) hoạt động như thế nào?
A. Ngăn chặn deadlock bằng cách yêu cầu các giao dịch khóa tài nguyên theo thứ tự.
B. Cho phép deadlock xảy ra, sau đó phát hiện chu trình và hủy một giao dịch nạn nhân.
C. Yêu cầu mỗi giao dịch phải khai báo tất cả tài nguyên cần dùng trước khi bắt đầu.
D. Gán một dấu thời gian cho mỗi giao dịch và dùng nó để quyết định bên nào chờ.
Câu 23. Trong SQL, hàm cửa sổ (Window Function) như ROW_NUMBER(), RANK() khác với các hàm tập hợp (Aggregate Function) như COUNT(), SUM() ở điểm nào?
A. Các hàm cửa sổ không thể được sử dụng bên trong mệnh đề SELECT của câu lệnh.
B. Hàm tập hợp gộp nhiều hàng, trong khi hàm cửa sổ vẫn giữ lại số hàng ban đầu.
C. Các hàm cửa sổ chỉ có thể làm việc với các cột có kiểu dữ liệu là kiểu số.
D. Hàm tập hợp yêu cầu mệnh đề OVER(), trong khi các hàm cửa sổ thì lại không.
Câu 24. Mục đích của việc sử dụng Biểu thức Bảng Chung (Common Table Expression – CTE), bắt đầu bằng từ khóa WITH, là gì?
A. Tạo tập kết quả tạm thời, có tên để giúp câu lệnh dễ đọc và có cấu trúc hơn.
B. Được dùng để lưu trữ vĩnh viễn kết quả của một câu truy vấn phức tạp.
C. Được dùng để định nghĩa một ràng buộc toàn vẹn trên một bảng dữ liệu.
D. Được dùng để thực thi một chuỗi các câu lệnh SQL theo một thứ tự tuần tự.
Câu 25. “Database Schema” (lược đồ cơ sở dữ liệu) là gì?
A. Là bản thân dữ liệu thực tế đang được lưu trữ trong các bảng.
B. Là bản thiết kế cấu trúc CSDL, bao gồm bảng, cột, kiểu dữ liệu, và ràng buộc.
C. Là một chương trình ứng dụng được viết ra để truy cập cơ sở dữ liệu.
D. Là một bản sao lưu dự phòng của cơ sở dữ liệu tại một thời điểm.
Câu 26. Trong SQL, NULL có ý nghĩa gì?
A. Là một giá trị có ý nghĩa hoàn toàn tương đương với giá trị số 0.
B. Là một giá trị có ý nghĩa hoàn toàn tương đương với một chuỗi rỗng (”).
C. Đại diện cho sự vắng mặt của giá trị hoặc một giá trị không xác định, không rõ.
D. Là một giá trị logic có ý nghĩa hoàn toàn tương đương với giá trị FALSE.
Câu 27. Một chỉ mục bao hàm (Covering Index) là một dạng tối ưu hóa truy vấn. Nó là gì?
A. Là một chỉ mục được người quản trị tạo trên tất cả các cột của một bảng.
B. Là chỉ mục chứa mọi cột cần cho truy vấn, giúp không cần truy cập vào bảng chính.
C. Là một loại chỉ mục đặc biệt được sử dụng để mã hóa dữ liệu nhạy cảm.
D. Là một tên gọi khác của chỉ mục phân cụm (clustered index) trong CSDL.
Câu 28. Phép toán INTERSECT trong SQL được sử dụng để làm gì?
A. Kết hợp tất cả các hàng từ hai câu lệnh SELECT, bao gồm cả các hàng trùng lặp.
B. Trả về một tập hợp các hàng duy nhất mà có mặt trong kết quả của cả hai câu lệnh.
C. Trả về các hàng có trong kết quả câu lệnh đầu tiên nhưng không có ở câu thứ hai.
D. Thực hiện một phép nối trong (inner join) giữa hai bảng dữ liệu có liên quan.
Câu 29. “Tính độc lập dữ liệu vật lý” (Physical Data Independence) có nghĩa là:
A. Khả năng thay đổi lược đồ vật lý mà không cần phải viết lại các chương trình ứng dụng.
B. Khả năng thay đổi lược đồ quan niệm mà không làm ảnh hưởng đến các khung nhìn.
C. Dữ liệu có thể được truy cập một cách dễ dàng từ bất kỳ máy tính nào trên mạng.
D. Dữ liệu được lưu trữ một cách hoàn toàn độc lập với hệ quản trị cơ sở dữ liệu.
Câu 30. Vai trò chính của một Người quản trị cơ sở dữ liệu (Database Administrator – DBA) trong một tổ chức là gì?
A. Chỉ có nhiệm vụ chính là viết các câu truy vấn SQL phức tạp cho nhà phân tích.
B. Chỉ có nhiệm vụ chính là thiết kế giao diện người dùng cho các ứng dụng.
C. Chỉ có nhiệm vụ chính là nhập liệu và đảm bảo chất lượng dữ liệu đầu vào.
D. Chịu trách nhiệm toàn diện về thiết kế, bảo trì, an ninh và hiệu suất của CSDL.