Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Hệ Quản Trị Cơ Sở Dữ Liệu - Đề 02 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: Một công ty thương mại điện tử muốn xây dựng hệ thống quản lý cơ sở dữ liệu để theo dõi thông tin khách hàng, đơn hàng và sản phẩm. Theo bạn, mô hình cơ sở dữ liệu nào sẽ phù hợp nhất để đáp ứng yêu cầu này, đảm bảo tính toàn vẹn dữ liệu và dễ dàng truy vấn thông tin phức tạp?
- A. Mô hình quan hệ (Relational Model)
- B. Mô hình phi quan hệ (NoSQL Model)
- C. Mô hình phân cấp (Hierarchical Model)
- D. Mô hình hướng đối tượng (Object-Oriented Model)
Câu 2: Xét lược đồ cơ sở dữ liệu quan hệ gồm hai bảng `Nhân viên(MaNV, TenNV, MaPB)` và `PhòngBan(MaPB, TenPB, TruongPhong)`. Câu lệnh SQL nào sau đây sẽ trả về tên của tất cả nhân viên và tên phòng ban mà họ thuộc về?
- A. SELECT TenNV, TenPB FROM Nhân viên, PhòngBan;
- B. SELECT TenNV, TenPB FROM Nhân viên WHERE MaPB = PhòngBan.MaPB;
- C. SELECT TenNV, TenPB FROM Nhân viên INNER JOIN PhòngBan ON Nhân viên.MaPB = PhòngBan.MaPB;
- D. SELECT TenNV, TenPB FROM Nhân viên LEFT JOIN PhòngBan ON Nhân viên.MaPB = PhòngBan.MaPB;
Câu 3: Trong quá trình thiết kế cơ sở dữ liệu quan hệ, chuẩn hóa dữ liệu là một bước quan trọng. Mục đích chính của việc chuẩn hóa cơ sở dữ liệu là gì?
- A. Tăng tốc độ truy vấn dữ liệu
- B. Giảm thiểu dư thừa dữ liệu và đảm bảo tính toàn 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 cơ sở dữ liệu
Câu 4: Giao tác (Transaction) trong hệ quản trị cơ sở dữ liệu có thuộc tính ACID. Thuộc tính "Nguyên tử" (Atomicity) đảm bảo điều gì?
- A. Giao tác được thực hiện như một đơn vị không thể chia cắt, hoặc thành công toàn bộ hoặc thất bại toàn bộ.
- B. Dữ liệu trong cơ sở dữ liệu luôn nhất quán trước và sau khi giao tác thực hiện.
- C. Các giao tác đồng thời thực hiện không gây ảnh hưởng lẫn nhau.
- D. Dữ liệu được ghi xuống bộ nhớ lâu dài và không bị mất mát ngay cả khi hệ thống gặp sự cố.
Câu 5: Xét tình huống hai giao tác T1 và T2 cùng truy cập và sửa đổi một bản ghi dữ liệu. Cơ chế kiểm soát đồng thời (Concurrency Control) nào sau đây giúp ngăn chặn mất mát cập nhật (lost update) trong tình huống này?
- A. Kiểm soát đồng thời dựa trên dấu thời gian (Timestamp-based concurrency control)
- B. Kiểm soát đồng thời bi quan (Pessimistic concurrency control)
- C. Kiểm soát đồng thời dựa trên khóa (Lock-based concurrency control)
- D. Kiểm soát đồng thời lạc quan (Optimistic concurrency control)
Câu 6: Trong hệ quản trị cơ sở dữ liệu, chỉ mục (Index) được sử dụng để làm gì?
- A. Đảm bảo tính toàn vẹn dữ liệu
- B. Tăng tốc độ truy vấn dữ liệu
- C. Giảm dung lượng lưu trữ cơ sở dữ liệu
- D. Tăng cường bảo mật dữ liệu
Câu 7: Khi nào thì việc sử dụng chỉ mục trong cơ sở dữ liệu có thể gây ra tác động tiêu cực đến hiệu suất?
- A. Khi truy vấn dữ liệu trên các cột không được đánh chỉ mục
- B. Khi cơ sở dữ liệu có dung lượng lớn
- C. Khi có quá nhiều truy vấn đọc dữ liệu
- D. Khi thực hiện các thao tác ghi (INSERT, UPDATE, DELETE) dữ liệu thường xuyên trên các cột được đánh chỉ mục
Câu 8: Sao lưu và phục hồi (Backup and Recovery) là một chức năng quan trọng của hệ quản trị cơ sở dữ liệu. Mục đích chính của việc sao lưu cơ sở dữ liệu là gì?
- A. Tăng tốc độ truy vấn dữ liệu
- B. Giảm dung lượng lưu trữ cơ sở dữ liệu
- C. Đảm bảo khả năng phục hồi dữ liệu trong trường hợp hệ thống gặp sự cố hoặc mất dữ liệu
- D. Tăng cường bảo mật dữ liệu
Câu 9: Phân quyền truy cập (Access Control) trong hệ quản trị cơ sở dữ liệu nhằm mục đích gì?
- A. Tăng tốc độ truy vấn dữ liệu
- B. Giảm dung lượng lưu trữ cơ sở dữ liệu
- C. Đảm bảo tính toàn vẹn dữ liệu
- D. Kiểm soát quyền truy cập và thao tác dữ liệu của người dùng, đảm bảo an ninh dữ liệu
Câu 10: NoSQL (Not Only SQL) là một loại hệ quản trị cơ sở dữ liệu khác biệt so với hệ quản trị cơ sở dữ liệu quan hệ truyền thống. Ưu điểm chính của NoSQL là gì trong việc xử lý dữ liệu lớn và phi cấu trúc?
- A. Đảm bảo tính toàn vẹn dữ liệu ACID mạnh mẽ
- B. Khả năng mở rộng linh hoạt, hiệu suất cao với dữ liệu lớn và phi cấu trúc
- C. Dễ dàng quản lý các mối quan hệ phức tạp giữa các bảng
- D. Sử dụng ngôn ngữ truy vấn SQL quen thuộc và mạnh mẽ
Câu 11: Loại cơ sở dữ liệu NoSQL nào phù hợp nhất để lưu trữ và truy vấn dữ liệu dạng cặp khóa-giá trị (key-value pairs) với tốc độ truy cập cực nhanh?
- A. Cơ sở dữ liệu Key-Value (ví dụ: Redis, Memcached)
- B. Cơ sở dữ liệu Document (ví dụ: MongoDB, Couchbase)
- C. Cơ sở dữ liệu Column-Family (ví dụ: Cassandra, HBase)
- D. Cơ sở dữ liệu Graph (ví dụ: Neo4j, Amazon Neptune)
Câu 12: Trong mô hình cơ sở dữ liệu quan hệ, ràng buộc toàn vẹn tham chiếu (Referential Integrity Constraint) đảm bảo điều gì?
- A. Dữ liệu trong một cột phải thuộc một kiểu dữ liệu nhất định
- B. Giá trị của một cột không được phép trùng lặp trong bảng
- C. Giá trị của khóa ngoại phải tồn tại trong bảng tham chiếu (bảng cha)
- D. Một cột không được phép chứa giá trị NULL
Câu 13: Xét câu lệnh SQL: `SELECT Department, COUNT() FROM Employees GROUP BY Department HAVING COUNT() > 5;` Câu lệnh này trả về thông tin gì?
- A. Tổng số nhân viên trong mỗi phòng ban
- B. Các phòng ban có số lượng nhân viên lớn hơn 5 và số lượng nhân viên trong mỗi phòng ban đó
- C. Các phòng ban có số lượng nhân viên nhỏ hơn 5
- D. Danh sách tất cả các phòng ban
Câu 14: Trong ngữ cảnh cơ sở dữ liệu phân tán (Distributed Database), "Tính trong suốt phân tán" (Distribution Transparency) nghĩa là gì?
- A. Người dùng không cần biết dữ liệu được lưu trữ ở nhiều vị trí khác nhau, hệ thống tự động quản lý việc truy cập dữ liệu phân tán.
- B. Dữ liệu được phân tán đều trên tất cả các nút trong hệ thống.
- C. Các giao tác được thực hiện phân tán trên nhiều nút.
- D. Hệ thống có khả năng tự động phục hồi khi một nút bị lỗi.
Câu 15: Kỹ thuật "Data Sharding" thường được sử dụng trong cơ sở dữ liệu phân tán để làm gì?
- A. Sao chép dữ liệu sang nhiều máy chủ để tăng tính sẵn sàng
- B. Phân chia dữ liệu theo chiều ngang và lưu trữ trên nhiều máy chủ khác nhau để tăng khả năng mở rộng và hiệu suất
- C. Nén dữ liệu để giảm dung lượng lưu trữ
- D. Mã hóa dữ liệu để tăng cường bảo mật
Câu 16: Trong kiến trúc 3 lớp (3-Tier Architecture) của hệ thống thông tin, lớp nào chịu trách nhiệm xử lý các yêu cầu nghiệp vụ và logic ứng dụng?
- A. Lớp trình bày (Presentation Tier)
- B. Lớp ứng dụng/logic nghiệp vụ (Application/Business Logic Tier)
- C. Lớp dữ liệu (Data Tier)
- D. Lớp mạng (Network Tier)
Câu 17: "Data Warehouse" (Kho dữ liệu) khác biệt với cơ sở dữ liệu giao dịch (Transactional Database) chủ yếu ở điểm nào?
- A. Data Warehouse lưu trữ dữ liệu hiện tại, còn cơ sở dữ liệu giao dịch lưu trữ dữ liệu lịch sử
- B. Data Warehouse được thiết kế để xử lý giao dịch, còn cơ sở dữ liệu giao dịch được thiết kế cho phân tích
- C. Data Warehouse được thiết kế cho phân tích và báo cáo, còn cơ sở dữ liệu giao dịch được thiết kế cho xử lý giao dịch hàng ngày
- D. Data Warehouse sử dụng mô hình NoSQL, còn cơ sở dữ liệu giao dịch sử dụng mô hình quan hệ
Câu 18: Trong khai phá dữ liệu (Data Mining), kỹ thuật "Phân cụm" (Clustering) được sử dụng để làm gì?
- A. Nhóm các đối tượng dữ liệu tương tự nhau thành các cụm dựa trên đặc điểm chung
- B. Dự đoán giá trị của một biến mục tiêu dựa trên các biến đầu vào
- C. Tìm kiếm các mẫu và mối quan hệ ẩn trong dữ liệu
- D. Phân loại các đối tượng dữ liệu vào các lớp đã được xác định trước
Câu 19: "ETL" là viết tắt của quy trình nào trong Data Warehousing?
- A. Evaluate, Test, and Learn
- B. Encrypt, Transfer, and Log
- C. Extract, Transform, and Load
- D. Error, Tracking, and Logging
Câu 20: Trong SQL, mệnh đề `UNION` được sử dụng để làm gì?
- A. Lọc dữ liệu từ một bảng dựa trên điều kiện
- B. Kết hợp kết quả của hai hoặc nhiều câu lệnh SELECT thành một tập kết quả duy nhất, loại bỏ các bản ghi trùng lặp
- C. Sắp xếp dữ liệu theo một hoặc nhiều cột
- D. Nhóm các bản ghi có giá trị giống nhau trong một cột
Câu 21: Sự khác biệt chính giữa `UNION` và `UNION ALL` trong SQL là gì?
- A. `UNION` loại bỏ các bản ghi trùng lặp trong tập kết quả, trong khi `UNION ALL` giữ lại tất cả các bản ghi, bao gồm cả trùng lặp.
- B. `UNION ALL` chỉ sử dụng được với số lượng bảng ít hơn so với `UNION`.
- C. `UNION` chỉ sử dụng được với các cột có cùng kiểu dữ liệu, còn `UNION ALL` thì không.
- D. `UNION ALL` thực hiện chậm hơn so với `UNION`.
Câu 22: Trong cơ sở dữ liệu quan hệ, dạng chuẩn 3NF (Third Normal Form) loại bỏ loại dư thừa dữ liệu nào mà dạng chuẩn 2NF (Second Normal Form) chưa loại bỏ được?
- A. Dư thừa do lặp lại dữ liệu trong cùng một cột
- B. Dư thừa do phụ thuộc hàm đầy đủ (fully functional dependency)
- C. Dư thừa do phụ thuộc bắc cầu (transitive dependency)
- D. Dư thừa do phụ thuộc nhiều trị (multivalued dependency)
Câu 23: "Stored Procedure" (Thủ tục lưu trữ) trong hệ quản trị cơ sở dữ liệu là gì và lợi ích chính của việc sử dụng Stored Procedure là gì?
- A. Một loại chỉ mục đặc biệt giúp tăng tốc độ truy vấn
- B. Một cơ chế sao lưu và phục hồi dữ liệu tự động
- C. Một ngôn ngữ lập trình để tạo giao diện người dùng cho cơ sở dữ liệu
- D. Một tập hợp các câu lệnh SQL được biên dịch sẵn và lưu trữ trên máy chủ cơ sở dữ liệu, giúp tăng hiệu suất, bảo mật và tái sử dụng mã
Câu 24: Khi thiết kế cơ sở dữ liệu cho một hệ thống quản lý thư viện, bạn cần lưu trữ thông tin về sách, độc giả và việc mượn trả sách. Mối quan hệ giữa bảng "Sách" và bảng "Độc giả" thông qua bảng "PhiếuMượn" là loạ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 25: Trong SQL, hàm tổng hợp (Aggregate function) `AVG()` được sử dụng để làm gì?
- A. Đếm số lượng bản ghi trong một bảng
- B. Tính giá trị trung bình của các giá trị trong một cột số
- C. Tìm giá trị lớn nhất trong một cột
- D. Tính tổng các giá trị trong một cột số
Câu 26: "View" (Khung nhìn) trong cơ sở dữ liệu là gì và lợi ích chính của việc sử dụng View là gì?
- A. Một bảng ảo được tạo ra từ kết quả của một câu truy vấn, giúp đơn giản hóa truy vấn phức tạp, bảo mật dữ liệu và tùy biến giao diện dữ liệu.
- B. Một bản sao lưu dự phòng của dữ liệu gốc
- C. Một cơ chế kiểm soát đồng thời giao tác
- D. Một công cụ để thiết kế giao diện người dùng cho cơ sở dữ liệu
Câu 27: Trong ngữ cảnh bảo mật cơ sở dữ liệu, "SQL Injection" là loại tấn công nào?
- A. Tấn công từ chối dịch vụ (Denial of Service - DoS)
- B. Tấn công giả mạo (Phishing Attack)
- C. Tấn công Man-in-the-Middle
- D. Tấn công bằng cách chèn mã SQL độc hại vào các truy vấn cơ sở dữ liệu
Câu 28: Biện pháp nào sau đây giúp phòng chống tấn công SQL Injection hiệu quả nhất?
- A. Sử dụng mật khẩu mạnh cho tài khoản cơ sở dữ liệu
- B. Sử dụng Prepared Statements hoặc Parameterized Queries khi xây dựng truy vấn SQL
- C. Thường xuyên sao lưu cơ sở dữ liệu
- D. Giới hạn quyền truy cập cơ sở dữ liệu cho người dùng
Câu 29: Trong ngữ cảnh đám mây (Cloud Computing), "Database as a Service (DBaaS)" là gì?
- A. Một loại phần mềm quản lý cơ sở dữ liệu mã nguồn mở
- B. Một mô hình triển khai cơ sở dữ liệu trên máy chủ vật lý riêng
- C. Một dịch vụ cung cấp cơ sở dữ liệu trên nền tảng đám mây, cho phép người dùng sử dụng cơ sở dữ liệu mà không cần quản lý hạ tầng
- D. Một giao thức truy cập cơ sở dữ liệu từ xa
Câu 30: Ưu điểm chính của việc sử dụng "Database as a Service (DBaaS)" so với tự quản lý cơ sở dữ liệu trên máy chủ riêng là gì?
- A. Hiệu suất truy vấn cơ sở dữ liệu cao hơn
- B. Khả năng tùy biến cấu hình cơ sở dữ liệu linh hoạt hơn
- C. Bảo mật dữ liệu tốt hơn
- D. Giảm chi phí quản lý, dễ dàng mở rộng, tính sẵn sàng cao do nhà cung cấp dịch vụ đám mây đảm nhiệm