1. Trong mô hình dữ liệu quan hệ, khóa chính (Primary Key) được sử dụng để:
A. Liên kết các bảng với nhau.
B. Xác định duy nhất mỗi bản ghi trong một bảng.
C. Tăng tốc độ truy vấn dữ liệu.
D. Đảm bảo tính toàn vẹn dữ liệu tham chiếu.
2. Thao tác nào sau đây KHÔNG phải là một thao tác cơ bản trong SQL?
A. SELECT
B. UPDATE
C. DELETE
D. COMPILE
3. Trong quản trị cơ sở dữ liệu, `transaction` (giao dịch) có tính chất ACID, trong đó `Atomicity` (tính nguyên tử) đảm bảo điều gì?
A. Giao dịch được thực hiện một cách nhất quán.
B. Giao dịch được thực hiện độc lập với các giao dịch khác.
C. Giao dịch hoặc thực hiện thành công toàn bộ, hoặc không thực hiện gì cả.
D. Dữ liệu được duy trì bền vững sau khi giao dịch hoàn thành.
4. Loại ràng buộc nào sau đây được sử dụng để đảm bảo rằng một giá trị trong một cột phải thuộc một tập hợp các giá trị được định nghĩa trước?
A. Ràng buộc NOT NULL
B. Ràng buộc UNIQUE
C. Ràng buộc CHECK
D. Ràng buộc FOREIGN KEY
5. Chỉ mục (Index) trong cơ sở dữ liệu được tạo ra nhằm mục đích chính là:
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. Đơn giản hóa cấu trúc cơ sở dữ liệu.
6. Trong ngữ cảnh SQL, mệnh đề `JOIN` được sử dụng để:
A. Lọc dữ liệu từ một bảng.
B. Sắp xếp dữ liệu trả về.
C. Kết hợp dữ liệu từ hai hoặc nhiều bảng dựa trên các cột liên quan.
D. Thay đổi cấu trúc của một bảng.
7. Sao lưu (backup) cơ sở dữ liệu là một hoạt động quan trọng trong quản trị CSDL. Mục đích chính của việc sao lưu là:
A. Tăng hiệu suất truy vấn.
B. Phòng ngừa mất dữ liệu do sự cố hệ thống hoặc lỗi người dùng.
C. Tối ưu hóa dung lượng lưu trữ.
D. Cải thiện tính bảo mật của dữ liệu.
8. Trong mô hình ER (Entity-Relationship), hình chữ nhật thường được sử dụng để biểu diễn:
A. Thuộc tính (Attribute)
B. Mối quan hệ (Relationship)
C. Thực thể (Entity)
D. Khóa chính (Primary Key)
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:
A. Tăng tốc độ xử lý giao dịch.
B. Đảm bảo dữ liệu luôn sẵn sàng.
C. Hạn chế quyền truy cập và thao tác dữ liệu của người dùng, đảm bảo an ninh và bảo mật.
D. Tối ưu hóa cấu trúc cơ sở dữ liệu.
10. Khái niệm `Data Warehouse` (Kho dữ liệu) thường được sử dụng cho mục đích:
A. Xử lý giao dịch trực tuyến (OLTP).
B. Lưu trữ dữ liệu tạm thời.
C. Phân tích dữ liệu và hỗ trợ ra quyết định (OLAP).
D. Quản lý dữ liệu phi cấu trúc.
11. Trong SQL, mệnh đề `GROUP BY` thường đi kèm với các hàm tập hợp (aggregate functions) như:
A. WHERE, HAVING, ORDER BY
B. JOIN, UNION, INTERSECT
C. COUNT, SUM, AVG, MAX, MIN
D. CREATE, ALTER, DROP
12. Đâu là lợi ích chính của việc sử dụng `Stored Procedure` (Thủ tục lưu trữ) trong cơ sở dữ liệu?
A. Tăng cường khả năng mở rộng của cơ sở dữ liệu.
B. Giảm tải cho máy chủ cơ sở dữ liệu bằng cách chuyển logic xử lý sang client.
C. Cải thiện hiệu suất bằng cách biên dịch trước và tái sử dụng mã SQL, giảm lưu lượng mạng.
D. Đơn giản hóa việc thiết kế giao diện người dùng.
13. Trong quản lý giao dịch đồng thời (Concurrency Control), `deadlock` (bế tắc) xảy ra khi:
A. Một giao dịch cố gắng truy cập dữ liệu mà nó không có quyền.
B. Hai hoặc nhiều giao dịch chờ đợi lẫn nhau để giải phóng tài nguyên mà chúng đang nắm giữ.
C. Một giao dịch thực hiện quá nhiều thao tác trong một khoảng thời gian ngắn.
D. Hệ thống cơ sở dữ liệu gặp sự cố phần cứng.
14. Công nghệ NoSQL thường được ưa chuộng trong các ứng dụng nào sau đây?
A. Hệ thống quản lý quan hệ khách hàng (CRM) truyền thống.
B. Ứng dụng thương mại điện tử quy mô lớn, mạng xã hội, xử lý dữ liệu lớn.
C. Hệ thống kế toán và tài chính doanh nghiệp.
D. Các ứng dụng yêu cầu tính toàn vẹn dữ liệu ACID tuyệt đối.
15. Trong SQL, `VIEW` (khung nhìn) là gì?
A. Một bản sao vật lý của dữ liệu từ một hoặc nhiều bảng.
B. Một bảng tạm thời chỉ tồn tại trong phiên làm việc hiện tại.
C. Một truy vấn SQL được lưu trữ, đại diện cho một bảng ảo dựa trên kết quả của truy vấn.
D. Một loại chỉ mục đặc biệt để tăng tốc độ truy vấn phức tạp.
16. Nguyên tắc `Normalization` (Chuẩn hóa) cơ sở dữ liệu nhằm mục đích chính là:
A. Tăng tốc độ truy vấn dữ liệu.
B. Giảm thiểu sự dư thừa dữ liệu và cải thiện tính toàn vẹn dữ liệu.
C. Đơn giản hóa quá trình sao lưu và phục hồi.
D. Tối ưu hóa dung lượng lưu trữ trên ổ cứng.
17. Loại tấn công nào sau đây nhắm vào cơ sở dữ liệu bằng cách chèn mã SQL độc hại vào các truy vấn đầu vào?
A. Tấn công DDoS (Distributed Denial of Service).
B. Tấn công SQL Injection.
C. Tấn công Man-in-the-Middle.
D. Tấn công Phishing.
18. Trong SQL, mệnh đề `HAVING` được sử dụng để làm gì?
A. Lọc các hàng trước khi nhóm chúng bằng `GROUP BY`.
B. Lọc các nhóm sau khi chúng đã được tạo bởi `GROUP BY`.
C. Sắp xếp kết quả truy vấn.
D. Kết hợp dữ liệu từ nhiều bảng.
19. Phương pháp `Replication` (Sao chép) cơ sở dữ liệu thường được sử dụng để:
A. Tăng cường bảo mật dữ liệu.
B. Cải thiện hiệu suất đọc và tính sẵn sàng của hệ thống.
C. Giảm dung lượng lưu trữ cơ sở dữ liệu.
D. Đơn giản hóa cấu trúc cơ sở dữ liệu.
20. Trong mô hình dữ liệu quan hệ, `Foreign Key` (Khóa ngoại) được sử dụng để:
A. Xác định duy nhất mỗi bản ghi trong một bảng.
B. Liên kết một bảng với bảng khác bằng cách tham chiếu đến khóa chính của bảng khác.
C. Tăng tốc độ truy vấn dữ liệu trên bảng hiện tại.
D. Đảm bảo tính toàn vẹn dữ liệu trong cùng một bảng.
21. Khi nào thì việc sử dụng `Trigger` (Bộ kích hoạt) trong cơ sở dữ liệu là phù hợp nhất?
A. Khi cần tăng tốc độ truy vấn dữ liệu.
B. Khi cần thực hiện các hành động tự động (ví dụ: kiểm tra ràng buộc phức tạp, ghi log, cập nhật dữ liệu liên quan) khi có sự kiện DML (INSERT, UPDATE, DELETE) xảy ra trên bảng.
C. Khi cần đơn giản hóa cấu trúc cơ sở dữ liệu.
D. Khi cần phân quyền truy cập chi tiết cho người dùng.
22. Trong ngữ cảnh cơ sở dữ liệu, `ACID` là viết tắt của các thuộc tính nào?
A. Availability, Consistency, Isolation, Durability.
B. Atomicity, Consistency, Integrity, Durability.
C. Atomicity, Consistency, Isolation, Durability.
D. Authorization, Consistency, Isolation, Data security.
23. Kỹ thuật `Sharding` (Phân mảnh) cơ sở dữ liệu được sử dụng để:
A. Tăng cường bảo mật dữ liệu.
B. Chia dữ liệu lớn trên nhiều máy chủ để cải thiện hiệu suất và khả năng mở rộng.
C. Nén dữ liệu để tiết kiệm dung lượng lưu trữ.
D. Sao lưu dữ liệu định kỳ.
24. Trong mô hình 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. Quan hệ (Relationship).
25. Phương pháp xác thực (Authentication) `two-factor authentication` (xác thực hai yếu tố) giúp tăng cường bảo mật cơ sở dữ liệu như thế nào?
A. Mã hóa dữ liệu trong quá trình truyền tải.
B. Yêu cầu người dùng cung cấp hai loại thông tin xác thực khác nhau (ví dụ: mật khẩu và mã OTP) để đăng nhập.
C. Tự động sao lưu dữ liệu định kỳ.
D. Giám sát và ghi log mọi truy cập vào cơ sở dữ liệu.
26. Trong SQL, `Subquery` (Truy vấn con) là gì?
A. Một truy vấn được thực thi trên một máy chủ cơ sở dữ liệu khác.
B. Một truy vấn được lồng bên trong một truy vấn khác.
C. Một truy vấn được tối ưu hóa để chạy nhanh hơn.
D. Một truy vấn được sử dụng để tạo ra View.
27. Chỉ số `Clustered Index` (Chỉ mục kết cụm) khác với `Non-clustered Index` (Chỉ mục không kết cụm) ở điểm nào?
A. Clustered index tăng tốc độ truy vấn nhanh hơn non-clustered index.
B. Clustered index xác định thứ tự vật lý của dữ liệu trong bảng, trong khi non-clustered index không làm thay đổi thứ tự vật lý.
C. Clustered index chỉ có thể tạo trên cột khóa chính, còn non-clustered index có thể tạo trên bất kỳ cột nào.
D. Clustered index tự động được tạo khi tạo bảng, còn non-clustered index phải tạo thủ công.
28. Trong ngữ cảnh quản trị cơ sở dữ liệu, `Disaster Recovery` (Phục hồi sau thảm họa) đề cập đến:
A. Quy trình tối ưu hóa hiệu suất cơ sở dữ liệu.
B. Kế hoạch và quy trình để phục hồi hệ thống cơ sở dữ liệu và dữ liệu sau một sự kiện thảm họa (ví dụ: thiên tai, tấn công mạng nghiêm trọng).
C. Phương pháp ngăn chặn tấn công SQL Injection.
D. Kỹ thuật phân quyền truy cập người dùng.
29. Mục đích của việc `Tuning` (Điều chỉnh) hiệu suất cơ sở dữ liệu là gì?
A. Tăng cường bảo mật dữ liệu.
B. Cải thiện tốc độ và hiệu quả hoạt động của cơ sở dữ liệu.
C. Giảm dung lượng lưu trữ cơ sở dữ liệu.
D. Đơn giản hóa cấu trúc cơ sở dữ liệu.
30. Trong SQL, `UNION` và `UNION ALL` khác nhau như thế nào?
A. `UNION ALL` loại bỏ các hàng trùng lặp, còn `UNION` thì không.
B. `UNION` loại bỏ các hàng trùng lặp, còn `UNION ALL` thì giữ lại tất cả các hàng, bao gồm cả trùng lặp.
C. `UNION` chỉ kết hợp dữ liệu từ hai bảng, còn `UNION ALL` có thể kết hợp từ nhiều bảng.
D. `UNION` sắp xếp kết quả, còn `UNION ALL` thì không.