Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Hệ Quản Trị Cơ Sở Dữ Liệu - Đề 06 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Trong mô hình dữ liệu quan hệ, khái niệm nào sau đây mô tả một thuộc tính hoặc cột trong một bảng?
- A. Bản ghi (Record)
- B. Thuộc tính (Attribute)
- C. Quan hệ (Relation)
- D. Khóa (Key)
Câu 2: Chuẩn hóa cơ sở dữ liệu nhằm mục đích chính là gì?
- A. Giảm dư thừa dữ liệu và cải thiện tính toàn vẹn
- B. Tăng tốc độ truy vấn dữ liệu
- C. Đơn giản hóa cấu trúc cơ sở dữ liệu
- D. Tăng cường bảo mật dữ liệu
Câu 3: Xét lược đồ quan hệ sau: `NHANVIEN(MaNV, TenNV, PhongBan, MaQL)`, trong đó `MaQL` là mã quản lý của nhân viên. Khóa ngoại trong lược đồ này là thuộc tính nào?
- A. MaNV
- B. TenNV
- C. PhongBan
- D. MaQL
Câu 4: Câu lệnh SQL nào được sử dụng để truy xuất dữ liệu từ nhiều bảng có liên quan với nhau?
- A. SELECT ... WHERE
- B. SELECT ... GROUP BY
- C. SELECT ... JOIN
- D. SELECT ... ORDER BY
Câu 5: Trong SQL, mệnh đề `WHERE` thường được sử dụng để làm gì?
- A. Sắp xếp dữ liệu
- B. Lọc các bản ghi thỏa mãn điều kiện
- C. Nhóm các bản ghi
- D. Tính toán tổng hợp
Câu 6: Loại ràng buộc toàn vẹn nào đảm bảo rằng giá trị của một cột phải tồn tại trong một cột khác của cùng hoặc bảng khác?
- A. Ràng buộc miền (Domain constraint)
- B. Ràng buộc thực thể (Entity integrity constraint)
- C. Ràng buộc tham chiếu (Referential integrity constraint)
- D. Ràng buộc khóa (Key constraint)
Câu 7: Giao tác (transaction) trong hệ quản trị cơ sở dữ liệu đảm bảo tính chất ACID nào để duy trì tính nhất quán dữ liệu ngay cả khi có lỗi hệ thống xảy ra?
- A. Tính nguyên tử (Atomicity)
- B. Tính nhất quán (Consistency)
- C. Tính độc lập (Isolation)
- D. Tính bền vững (Durability)
Câu 8: Trong mô hình client-server cho DBMS, thành phần nào chịu trách nhiệm xử lý các yêu cầu truy vấn từ người dùng?
- A. Client
- B. Server
- C. Network
- D. Giao diện người dùng
Câu 9: Phương pháp lập chỉ mục (indexing) trong cơ sở dữ liệu chủ yếu giúp cải thiện hiệu suất của thao tác nào?
- A. Truy vấn dữ liệu (SELECT)
- B. Thêm dữ liệu (INSERT)
- C. Sửa dữ liệu (UPDATE)
- D. Xóa dữ liệu (DELETE)
Câu 10: Loại cơ sở dữ liệu NoSQL nào phù hợp nhất cho việc lưu trữ dữ liệu có cấu trúc linh hoạt dạng key-value, ví dụ như dữ liệu phiên làm việc người dùng?
- A. Document database
- B. Key-value store
- C. Column-family database
- D. Graph database
Câu 11: Trong SQL, câu lệnh `ALTER TABLE` được sử dụng để làm gì?
- A. Truy vấn dữ liệu từ bảng
- B. Xóa dữ liệu trong bảng
- C. Thay đổi cấu trúc bảng
- D. Tạo bảng mới
Câu 12: Giả sử bạn có một bảng `SANPHAM` với cột `GiaBan`. Để tìm giá bán trung bình của tất cả sản phẩm, bạn sử dụng hàm tổng hợp nào trong SQL?
- A. SUM()
- B. COUNT()
- C. MAX()
- D. AVG()
Câu 13: Khi thiết kế cơ sở dữ liệu cho hệ thống quản lý thư viện, bạn cần lưu thông tin về sách, độc giả và việc mượn/trả sách. Mối quan hệ giữa `SACH` và `DOCGIA` khi độc giả mượn sách là mối quan hệ gì?
- A. Một - Một (One-to-One)
- B. Một - Nhiều (One-to-Many)
- C. Nhiều - Nhiều (Many-to-Many)
- D. Không có quan hệ
Câu 14: Trong ngữ cảnh kiểm soát đồng thời (concurrency control), kỹ thuật khóa hai pha (two-phase locking - 2PL) nhằm mục đích gì?
- A. Tăng tốc độ giao tác
- B. Ngăn chặn xung đột và đảm bảo tính tuần tự hóa
- C. Giảm thiểu dung lượng lưu trữ khóa
- D. Đơn giản hóa việc quản lý giao tác
Câu 15: Sao lưu (backup) và phục hồi (recovery) dữ liệu là một phần quan trọng của quản trị CSDL. Mục tiêu chính của việc sao lưu CSDL là gì?
- A. Đảm bảo khả năng phục hồi dữ liệu khi có sự cố
- B. Tăng hiệu suất truy vấn
- C. Tiết kiệm không gian lưu trữ
- D. Bảo mật dữ liệu khỏi truy cập trái phép
Câu 16: Trong SQL, mệnh đề `GROUP BY` thường đi kèm với các hàm tổng hợp (aggregate functions) để làm gì?
- A. Lọc dữ liệu theo điều kiện nhóm
- B. Sắp xếp dữ liệu theo nhóm
- C. Tính toán các giá trị tổng hợp cho mỗi nhóm
- D. Kết hợp dữ liệu từ nhiều bảng theo nhóm
Câu 17: Cho lược đồ quan hệ `SINHVIEN(MaSV, TenSV, MaLop)` và `LOP(MaLop, TenLop)`. Câu lệnh SQL nào sau đây sẽ trả về danh sách tên sinh viên và tên lớp của họ?
- A. SELECT TenSV, TenLop FROM SINHVIEN, LOP WHERE SINHVIEN.MaLop = LOP.MaLop;
- B. SELECT TenSV, TenLop FROM SINHVIEN JOIN LOP ON SINHVIEN.MaLop = LOP.MaLop;
- C. SELECT TenSV, TenLop FROM SINHVIEN INNER JOIN LOP;
- D. SELECT TenSV, TenLop FROM SINHVIEN CROSS JOIN LOP WHERE SINHVIEN.MaLop = LOP.MaLop;
Câu 18: Trong hệ quản trị cơ sở dữ liệu, thuật ngữ "view" (khung nhìn) dùng để chỉ điều gì?
- A. Một bản sao vật lý của dữ liệu
- B. Một chỉ mục để tăng tốc độ truy vấn
- C. Một bản ghi cụ thể trong bảng
- D. Một bảng ảo được tạo ra từ kết quả của một truy vấn
Câu 19: Loại tấn công SQL injection lợi dụng lỗ hổng nào trong ứng dụng web?
- A. Xử lý đầu vào người dùng không đúng cách
- B. Cấu hình máy chủ web sai
- C. Mật khẩu yếu
- D. Thiếu cập nhật bản vá hệ điều hành
Câu 20: Trong mô hình dữ liệu hướng đối tượng (object-oriented database), khái niệm nào tương ứng với bảng trong mô hình quan hệ?
- A. Thuộc tính (Attribute)
- B. Lớp (Class)
- C. Đối tượng (Object)
- D. Phương thức (Method)
Câu 21: Khi thiết kế một cơ sở dữ liệu, bước nào sau đây thường được thực hiện đầu tiên?
- A. Chọn DBMS
- B. Thiết kế lược đồ vật lý
- C. Xác định yêu cầu và thu thập thông tin
- D. Chuẩn hóa lược đồ quan hệ
Câu 22: Trong SQL, câu lệnh `TRUNCATE TABLE` khác với `DELETE FROM TABLE` ở điểm nào chính?
- A. `TRUNCATE TABLE` chậm hơn `DELETE FROM TABLE`
- B. `TRUNCATE TABLE` có thể xóa có điều kiện, `DELETE FROM TABLE` thì không
- C. `DELETE FROM TABLE` đặt lại giá trị auto-increment, `TRUNCATE TABLE` thì không
- D. `TRUNCATE TABLE` nhanh hơn và không ghi log giao tác như `DELETE FROM TABLE`
Câu 23: Phương pháp xác thực (authentication) nào thường được sử dụng để kiểm tra danh tính người dùng trước khi cấp quyền truy cập vào CSDL?
- A. Mã hóa dữ liệu (Data encryption)
- B. Tên người dùng và mật khẩu (Username and password)
- C. Kiểm soát truy cập dựa trên vai trò (Role-based access control)
- D. Kiểm toán (Auditing)
Câu 24: Trong mô hình dữ liệu quan hệ, một "quan hệ" (relation) thường được biểu diễn dưới dạng nào?
- A. Bảng (Table)
- B. Cây (Tree)
- C. Đồ thị (Graph)
- D. Danh sách liên kết (Linked list)
Câu 25: Giả sử bạn muốn đảm bảo rằng cột "Email" trong bảng "KHACHHANG" phải chứa địa chỉ email hợp lệ. Loại ràng buộc nào bạn nên sử dụng?
- A. Ràng buộc khóa chính (Primary Key constraint)
- B. Ràng buộc khóa ngoại (Foreign Key constraint)
- C. Ràng buộc kiểm tra (Check constraint)
- D. Ràng buộc duy nhất (Unique constraint)
Câu 26: Trong SQL, câu lệnh `INSERT INTO` thuộc nhóm ngôn ngữ nào?
- A. DDL (Data Definition Language)
- B. DML (Data Manipulation Language)
- C. DCL (Data Control Language)
- D. TCL (Transaction Control Language)
Câu 27: Một hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) khác biệt chính so với hệ quản trị cơ sở dữ liệu phi quan hệ (NoSQL) ở điểm nào?
- A. Cấu trúc dữ liệu cố định và quan hệ giữa các bảng
- B. Khả năng mở rộng theo chiều ngang tốt hơn
- C. Hiệu suất cao hơn cho dữ liệu phi cấu trúc
- D. Dễ dàng xử lý dữ liệu lớn và phân tán
Câu 28: Trong quá trình chuẩn hóa CSDL, dạng chuẩn 3NF (Third Normal Form) loại bỏ loại dư thừa dữ liệu nào?
- A. Dư thừa do lặp lại nhóm
- B. Dư thừa do phụ thuộc hàm một phần
- C. Dư thừa do phụ thuộc hàm bắc cầu
- D. Dư thừa do phụ thuộc đa trị
Câu 29: Để cấp quyền truy cập "SELECT" trên bảng "NHANVIEN" cho người dùng "user1", câu lệnh SQL nào sau đây là đúng?
- A. CREATE USER user1 SELECT ON NHANVIEN;
- B. GRANT USER user1 TO SELECT ON NHANVIEN;
- C. AUTHORIZE SELECT ON NHANVIEN TO user1;
- D. GRANT SELECT ON NHANVIEN TO user1;
Câu 30: Trong quản lý giao tác, "deadlock" (bế tắc) xảy ra khi nào?
- A. Khi hệ thống bị lỗi phần cứng
- B. Khi hai hoặc nhiều giao tác chờ đợi lẫn nhau để giải phóng tài nguyên
- C. Khi một giao tác vi phạm tính chất ACID
- D. Khi có lỗi trong câu lệnh SQL