1. Trong mô hình dữ liệu quan hệ, khái niệm nào sau đây đại diện cho một thuộc tính của một thực thể?
A. Bảng
B. Thuộc tính
C. Khóa chính
D. Quan hệ
2. Câu lệnh SQL nào được sử dụng để truy xuất dữ liệu từ một hoặc nhiều bảng?
A. INSERT
B. UPDATE
C. DELETE
D. SELECT
3. Trong ngữ cảnh cơ sở dữ liệu, ACID là viết tắt của các thuộc tính quan trọng nào?
A. Atomicity, Consistency, Isolation, Durability
B. Accuracy, Completeness, Integrity, Documentation
C. Availability, Capacity, Integrity, Delay
D. Authorization, Configuration, Identification, Distribution
4. Loại ràng buộc toàn vẹn dữ liệu nào đảm bảo rằng giá trị của một cột phải là duy nhất trong tất cả các hàng của bảng?
A. Ràng buộc NOT NULL
B. Ràng buộc CHECK
C. Ràng buộc UNIQUE
D. Ràng buộc FOREIGN KEY
5. Trong kiến trúc 3 lớp của hệ quản trị cơ sở dữ liệu, lớp nào chịu trách nhiệm giao tiếp trực tiếp với người dùng cuối?
A. Lớp vật lý (Physical Layer)
B. Lớp khái niệm (Conceptual Layer)
C. Lớp khung nhìn (View Layer/Presentation Layer)
D. Lớp logic (Logical Layer)
6. Chỉ mục (Index) trong cơ sở dữ liệu được sử dụng chủ yếu để làm gì?
A. Tăng cường tính toàn vẹn dữ liệu
B. Cải thiện hiệu suất truy vấn dữ liệu
C. Giảm dung lượng lưu trữ dữ liệu
D. Đảm bảo tính nhất quán dữ liệu
7. Dạng chuẩn hóa nào loại bỏ sự phụ thuộc hàm bắc cầu?
A. 1NF (Dạng chuẩn 1)
B. 2NF (Dạng chuẩn 2)
C. 3NF (Dạng chuẩn 3)
D. BCNF (Dạng chuẩn Boyce-Codd)
8. Trong SQL, phép toán JOIN nào trả về tất cả các hàng từ bảng bên trái và các hàng phù hợp từ bảng bên phải?
A. INNER JOIN
B. RIGHT JOIN
C. FULL OUTER JOIN
D. LEFT JOIN
9. DDL (Data Definition Language) là một phần của SQL được sử dụng để làm gì?
A. Thao tác dữ liệu (Data Manipulation)
B. Kiểm soát truy cập dữ liệu (Data Access Control)
C. Định nghĩa cấu trúc dữ liệu (Data Structure Definition)
D. Truy vấn dữ liệu (Data Query)
10. Loại cơ sở dữ liệu nào thường được sử dụng để lưu trữ dữ liệu phi cấu trúc hoặc bán cấu trúc, như tài liệu JSON hoặc XML?
A. Cơ sở dữ liệu quan hệ (Relational Database)
B. Cơ sở dữ liệu hướng đối tượng (Object-Oriented Database)
C. Cơ sở dữ liệu NoSQL
D. Cơ sở dữ liệu phân cấp (Hierarchical Database)
11. 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)
B. Tấn công giả mạo (Phishing Attack)
C. Tấn công chèn mã độc SQL (SQL Injection Attack)
D. Tấn công trung gian (Man-in-the-Middle Attack)
12. Sao lưu (backup) và phục hồi (restore) cơ sở dữ liệu là một phần quan trọng của công tác quản trị cơ sở dữ liệu, nhằm mục đích chính là gì?
A. Tăng hiệu suất truy vấn
B. Đảm bảo tính sẵn sàng và khả năng phục hồi dữ liệu khi có sự cố
C. Tối ưu hóa dung lượng lưu trữ
D. Cải thiện tính bảo mật dữ liệu
13. Khái niệm `Data Warehouse` (Kho dữ liệu) thường được sử dụng cho mục đích gì?
A. Xử lý giao dịch trực tuyến (OLTP)
B. Lưu trữ dữ liệu giao dịch hiện tại
C. Phân tích và báo cáo dữ liệu (OLAP)
D. Quản lý dữ liệu thời gian thực
14. Trong mô hình ER (Entity-Relationship), ký hiệu hình elip thường được sử dụng để biểu diễn cho thành phần nào?
A. Thực thể (Entity)
B. Mối quan hệ (Relationship)
C. Thuộc tính (Attribute)
D. Khóa chính (Primary Key)
15. Phân quyền truy cập (Access Control) trong cơ sở dữ liệu nhằm mục đích gì?
A. Tăng tốc độ truy vấn
B. Đảm bảo tính toàn vẹn dữ liệu
C. Kiểm soát ai có quyền thực hiện thao tác nào trên dữ liệu
D. Giảm dung lượng lưu trữ
16. Câu lệnh SQL `TRUNCATE TABLE` khác với `DELETE FROM TABLE` ở điểm nào chính?
A. `TRUNCATE TABLE` xóa dữ liệu và cấu trúc bảng, còn `DELETE FROM TABLE` chỉ xóa dữ liệu
B. `TRUNCATE TABLE` nhanh hơn và không ghi log giao dịch như `DELETE FROM TABLE`
C. `TRUNCATE TABLE` có thể xóa dữ liệu có ràng buộc khóa ngoại, còn `DELETE FROM TABLE` thì không
D. `TRUNCATE TABLE` chỉ xóa dữ liệu của một bảng, còn `DELETE FROM TABLE` có thể xóa dữ liệu từ nhiều bảng
17. Trong cơ sở dữ liệu phân tán, chiến lược phân mảnh dữ liệu nào chia bảng theo hàng ngang, mỗi phân mảnh chứa một tập hợp các hàng?
A. Phân mảnh dọc (Vertical Fragmentation)
B. Phân mảnh ngang (Horizontal Fragmentation)
C. Phân mảnh hỗn hợp (Mixed Fragmentation)
D. Nhân bản dữ liệu (Data Replication)
18. Công cụ nào thường được sử dụng để quản lý và giám sát hiệu suất của hệ quản trị cơ sở dữ liệu?
A. Trình biên dịch (Compiler)
B. Hệ điều hành (Operating System)
C. Công cụ giám sát hiệu suất (Performance Monitoring Tools)
D. Trình soạn thảo văn bản (Text Editor)
19. Transaction (Giao dịch) trong cơ sở dữ liệu là gì?
A. Một bảng dữ liệu
B. Một đơn vị công việc logic được thực hiện trên cơ sở dữ liệu
C. Một loại chỉ mục
D. Một ngôn ngữ truy vấn dữ liệu
20. Trong mô hình cơ sở dữ liệu hướng đối tượng, 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. Đối tượng (Object)
C. Lớp (Class)
D. Phương thức (Method)
21. Câu lệnh SQL nào được sử dụng để thêm một cột mới vào bảng đã tồn tại?
A. CREATE TABLE
B. ALTER TABLE ADD COLUMN
C. UPDATE TABLE
D. INSERT INTO
22. Kỹ thuật `Sharding` thường được sử dụng trong cơ sở dữ liệu để giải quyết vấn đề gì?
A. Bảo mật dữ liệu
B. Mở rộng ngang (Horizontal Scaling) và hiệu suất
C. Toàn vẹn dữ liệu
D. Chuẩn hóa dữ liệu
23. View (Khung nhìn) trong cơ sở dữ liệu là gì?
A. Một bản sao vật lý của dữ liệu
B. Một bảng tạm thời
C. Một bảng ảo được tạo ra từ kết quả của một truy vấn
D. Một chỉ mục trên một bảng
24. Trong quản trị cơ sở dữ liệu, thuật ngữ `Data Mining` (Khai phá dữ liệu) đề cập đến quá trình nào?
A. Sao lưu và phục hồi dữ liệu
B. Tối ưu hóa hiệu suất truy vấn
C. Phân tích dữ liệu lớn để tìm ra các mẫu và thông tin hữu ích
D. Kiểm soát truy cập dữ liệu
25. Ngôn ngữ truy vấn cấu trúc (SQL) thuộc loại ngôn ngữ lập trình nào?
A. Ngôn ngữ lập trình hướng đối tượng
B. Ngôn ngữ lập trình thủ tục
C. Ngôn ngữ khai báo (Declarative language)
D. Ngôn ngữ lập trình hàm
26. Trong mô hình quan hệ, khóa ngoại (Foreign Key) được sử dụng để làm gì?
A. Xác định duy nhất mỗi hàng trong bảng
B. Liên kết giữa các bảng và đảm bảo tính toàn vẹn tham chiếu
C. Tăng tốc độ truy vấn
D. Mã hóa dữ liệu
27. Phương pháp kiểm soát đồng thời (Concurrency Control) nào sử dụng cơ chế khóa để ngăn chặn xung đột khi nhiều giao dịch truy cập cùng một dữ liệu?
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) với khóa
C. Kiểm soát đồng thời lạc quan (Optimistic Concurrency Control)
D. Kiểm soát đồng thời đa phiên bản (Multiversion Concurrency Control)
28. Hãy xem xét tình huống: Một ứng dụng thương mại điện tử cần lưu trữ thông tin sản phẩm (tên, mô tả, giá, hình ảnh) và thông tin đơn hàng (mã đơn hàng, ngày đặt hàng, danh sách sản phẩm, địa chỉ giao hàng). Lựa chọn mô hình cơ sở dữ liệu nào sau đây có thể phù hợp nhất để đáp ứng yêu cầu này, nếu ưu tiên tính linh hoạt và khả năng mở rộng?
A. Cơ sở dữ liệu quan hệ truyền thống (ví dụ: MySQL, PostgreSQL)
B. Cơ sở dữ liệu NoSQL dạng tài liệu (ví dụ: MongoDB, Couchbase)
C. Cơ sở dữ liệu đồ thị (ví dụ: Neo4j)
D. Cơ sở dữ liệu hướng cột (ví dụ: Cassandra)
29. Trong quá trình thiết kế cơ sở dữ liệu, bước nào sau đây thường được thực hiện trước bước thiết kế logic?
A. Thiết kế vật lý
B. Thiết kế khái niệm (Conceptual Design)
C. Chuẩn hóa cơ sở dữ liệu
D. Tối ưu hóa hiệu suất
30. Giả sử bạn cần xây dựng một hệ thống quản lý mạng xã hội, nơi các mối quan hệ giữa người dùng (bạn bè, theo dõi, nhóm...) là quan trọng. Loại cơ sở dữ liệu nào sẽ phù hợp nhất để mô hình hóa và truy vấn hiệu quả các mối quan hệ này?
A. Cơ sở dữ liệu quan hệ
B. Cơ sở dữ liệu NoSQL dạng tài liệu
C. Cơ sở dữ liệu đồ thị (Graph Database)
D. Cơ sở dữ liệu hướng cột