Trắc nghiệm Cơ sở dữ liệu - Đề 01 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ệ, một bảng (Table) còn được gọi là gì?
- A. Thuộc tính (Attribute)
- B. Quan hệ (Relation)
- C. Bộ (Tuple)
- D. Miền giá trị (Domain)
Câu 2: Giả sử bạn đang thiết kế CSDL cho một thư viện. Mỗi cuốn sách có thể có nhiều tác giả và mỗi tác giả có thể viết nhiều cuốn sách. Loại quan hệ giữa thực thể SÁCH và thực thể TÁC_GIẢ là gì?
- A. Một-một (One-to-One)
- B. Một-nhiều (One-to-Many)
- C. Nhiều-một (Many-to-One)
- D. Nhiều-nhiều (Many-to-Many)
Câu 3: Để biểu diễn mối quan hệ Nhiều-nhiều (Many-to-Many) giữa hai bảng A và B trong CSDL quan hệ, phương pháp chuẩn là gì?
- A. Thêm khóa chính của bảng B vào bảng A làm khóa ngoại.
- B. Thêm khóa chính của bảng A vào bảng B làm khóa ngoại.
- C. Tạo một bảng mới (bảng liên kết) chứa khóa ngoại tham chiếu đến khóa chính của cả bảng A và bảng B.
- D. Sử dụng một trường đa giá trị trong một trong hai bảng.
Câu 4: Trong CSDL quan hệ, thuộc tính nào hoặc tập hợp thuộc tính nào có khả năng xác định duy nhất mỗi bộ (hàng) trong một bảng?
- A. Khóa (Key)
- B. Miền giá trị (Domain)
- C. Chỉ mục (Index)
- D. Ràng buộc (Constraint)
Câu 5: Khóa chính (Primary Key) của một bảng trong CSDL quan hệ phải thỏa mãn những yêu cầu cơ bản nào?
- A. Chỉ cần duy nhất.
- B. Duy nhất và không được NULL.
- C. Không được NULL và có ít thuộc tính nhất.
- D. Duy nhất và có thể thay đổi giá trị.
Câu 6: Thuộc tính nào trong một bảng (bảng con) tham chiếu đến khóa chính của một bảng khác (bảng cha) nhằm thiết lập mối liên kết giữa hai bảng?
- A. Khóa chính (Primary Key)
- B. Khóa ứng viên (Candidate Key)
- C. Khóa ngoại (Foreign Key)
- D. Khóa siêu cấp (Super Key)
Câu 7: Tính chất nào của giao dịch (Transaction) trong CSDL đảm bảo rằng mọi thay đổi được thực hiện bởi giao dịch sẽ được lưu trữ vĩnh viễn và không bị mất ngay cả khi hệ thống gặp sự cố (như mất điện) sau khi giao dịch hoàn thành?
- A. Atomicity (Nguyên tố)
- B. Consistency (Nhất quán)
- C. Isolation (Cô lập)
- D. Durability (Bền vững)
Câu 8: Khi hai hoặc nhiều giao dịch cùng truy cập và thao tác trên cùng một dữ liệu đồng thời, hệ quản trị CSDL cần áp dụng cơ chế để đảm bảo tính chất nào của giao dịch, tránh các vấn đề như đọc dữ liệu chưa commit, đọc dữ liệu không lặp lại, hoặc ghi đè dữ liệu?
- A. Atomicity (Nguyên tố)
- B. Consistency (Nhất quán)
- C. Isolation (Cô lập)
- D. Durability (Bền vững)
Câu 9: Mục đích chính của việc chuẩn hóa (Normalization) CSDL quan hệ là gì?
- A. Giảm thiểu sự dư thừa dữ liệu và tránh các dị thường khi cập nhật.
- B. Tăng tốc độ truy vấn dữ liệu.
- C. Đảm bảo tính bảo mật của dữ liệu.
- D. Giúp CSDL dễ dàng mở rộng thêm các loại dữ liệu mới.
Câu 10: Dạng chuẩn nào (trong 3 dạng chuẩn đầu tiên: 1NF, 2NF, 3NF) yêu cầu tất cả các thuộc tính không khóa phải phụ thuộc hoàn toàn và bắc cầu vào khóa chính?
- A. 1NF (First Normal Form)
- B. 2NF (Second Normal Form)
- C. 3NF (Third Normal Form)
- D. BCNF (Boyce-Codd Normal Form)
Câu 11: Bạn có một bảng `HOA_DON` với các cột `MaHD`, `NgayLapHD`, `MaKH`, `TenKH`, `DiaChiKH`, `TongTienHD`. Giả sử `MaHD` là khóa chính. Bảng này có vi phạm dạng chuẩn 3NF không? Vì sao?
- A. Có, vì `TenKH` và `DiaChiKH` phụ thuộc vào `MaKH`, và `MaKH` phụ thuộc vào `MaHD` (phụ thuộc bắc cầu).
- B. Không, vì tất cả các thuộc tính không khóa (`NgayLapHD`, `MaKH`, `TenKH`, `DiaChiKH`, `TongTienHD`) đều phụ thuộc hoàn toàn vào khóa chính `MaHD`.
- C. Có, vì bảng chứa các nhóm lặp lại.
- D. Không, vì bảng chỉ có một khóa chính đơn giản.
Câu 12: Ngôn ngữ nào được sử dụng phổ biến nhất để định nghĩa cấu trúc CSDL (DDL) và thao tác dữ liệu (DML) trong các hệ quản trị CSDL quan hệ?
- A. NoSQL
- B. XML
- C. Java
- D. SQL
Câu 13: Câu lệnh SQL nào được sử dụng để thay đổi cấu trúc của một bảng hiện có trong CSDL (ví dụ: thêm cột, xóa cột, sửa kiểu dữ liệu)?
- A. CREATE TABLE
- B. ALTER TABLE
- C. DROP TABLE
- D. UPDATE TABLE
Câu 14: Cho bảng `NHAN_VIEN` (MaNV, TenNV, Luong, MaPhong). Câu lệnh SQL `SELECT TenNV FROM NHAN_VIEN WHERE Luong > 15000000 ORDER BY Luong DESC;` sẽ thực hiện việc gì?
- A. Lấy tên của các nhân viên có lương lớn hơn 15,000,000 và hiển thị theo thứ tự lương giảm dần.
- B. Lấy tất cả thông tin của nhân viên có lương lớn hơn 15,000,000.
- C. Cập nhật lương của các nhân viên lên 15,000,000.
- D. Xóa các nhân viên có lương nhỏ hơn hoặc bằng 15,000,000.
Câu 15: Khi cần kết hợp dữ liệu từ hai bảng `DON_HANG` (MaHD, MaKH, NgayLap) và `KHACH_HANG` (MaKH, TenKH, DiaChi) dựa trên cột `MaKH` chung, bạn sẽ sử dụng loại kết nối (JOIN) nào trong SQL để chỉ lấy các đơn hàng có thông tin khách hàng tương ứng?
- A. LEFT JOIN
- B. INNER JOIN
- C. RIGHT JOIN
- D. FULL OUTER JOIN
Câu 16: Chức năng chính của hệ quản trị CSDL (DBMS) là gì?
- A. Chỉ cho phép người dùng cuối truy cập dữ liệu.
- B. Lưu trữ dữ liệu trên đĩa cứng.
- C. Viết các chương trình ứng dụng sử dụng CSDL.
- D. Quản lý, kiểm soát truy cập, đảm bảo tính toàn vẹn và bảo mật của dữ liệu.
Câu 17: Ưu điểm chính của việc sử dụng hệ quản trị CSDL (DBMS) so với việc lưu trữ dữ liệu trong các tệp tin riêng lẻ là gì?
- A. Giảm thiểu dư thừa dữ liệu, tăng tính nhất quán và dễ dàng chia sẻ dữ liệu.
- B. Giảm chi phí lưu trữ dữ liệu.
- C. Đảm bảo mọi người dùng đều có quyền truy cập đầy đủ vào tất cả dữ liệu.
- D. Tăng tốc độ xử lý các phép tính phức tạp trên dữ liệu.
Câu 18: Trong kiến trúc CSDL 3 cấp (Three-tier architecture - External, Conceptual, Internal), cấp nào mô tả cấu trúc toàn bộ CSDL một cách logic, độc lập với cách dữ liệu được lưu trữ vật lý và cách người dùng nhìn thấy nó?
- A. Cấp Ngoài (External level)
- B. Cấp Quan niệm (Conceptual level)
- C. Cấp Trong (Internal level)
- D. Cấp Vật lý (Physical level)
Câu 19: Tính độc lập dữ liệu (Data Independence) là khả năng cho phép thay đổi lược đồ ở một cấp mà không ảnh hưởng đến lược đồ ở cấp cao hơn. Việc thay đổi cấu trúc lưu trữ vật lý (ví dụ: thay đổi cách dữ liệu được sắp xếp trên đĩa) mà không ảnh hưởng đến lược đồ quan niệm được gọi là gì?
- A. Độc lập dữ liệu vật lý (Physical Data Independence)
- B. Độc lập dữ liệu logic (Logical Data Independence)
- C. Độc lập ứng dụng (Application Independence)
- D. Độc lập hệ thống (System Independence)
Câu 20: Ràng buộc toàn vẹn (Integrity Constraint) nào đảm bảo rằng giá trị của khóa ngoại trong bảng con phải hoặc là NULL hoặc là giá trị của khóa chính trong bảng cha?
- A. Ràng buộc toàn vẹn thực thể (Entity Integrity)
- B. Ràng buộc toàn vẹn tham chiếu (Referential Integrity)
- C. Ràng buộc toàn vẹn miền giá trị (Domain Integrity)
- D. Ràng buộc toàn vẹn khóa (Key Integrity)
Câu 21: Trong CSDL phân tán (Distributed Database), dữ liệu được lưu trữ ở nhiều địa điểm khác nhau nhưng vẫn được quản lý bởi một hệ thống duy nhất. Ưu điểm chính của CSDL phân tán là gì?
- A. Dữ liệu luôn nhất quán tuyệt đối tại mọi thời điểm.
- B. Thiết kế và quản trị hệ thống đơn giản hơn CSDL tập trung.
- C. Tăng tính sẵn sàng và độ tin cậy của dữ liệu.
- D. Chi phí triển khai và duy trì luôn thấp hơn.
Câu 22: Hệ quản trị CSDL nào sau đây KHÔNG thuộc loại CSDL quan hệ (Relational Database Management System - RDBMS)?
- A. MySQL
- B. PostgreSQL
- C. Oracle Database
- D. MongoDB
Câu 23: Bạn được yêu cầu thiết kế một CSDL cho một ứng dụng mạng xã hội, nơi dữ liệu có cấu trúc linh hoạt, thường xuyên thay đổi và cần khả năng mở rộng theo chiều ngang (scale out) dễ dàng để xử lý lượng lớn dữ liệu phi cấu trúc/bán cấu trúc. Loại CSDL nào có thể là lựa chọn phù hợp hơn so với CSDL quan hệ truyền thống trong trường hợp này?
- A. CSDL NoSQL (ví dụ: CSDL tài liệu, CSDL đồ thị)
- B. CSDL quan hệ (RDBMS)
- C. CSDL phân cấp
- D. CSDL mạng
Câu 24: Trong ngữ cảnh bảo mật CSDL, xác thực (Authentication) là quá trình gì?
- A. Kiểm tra danh tính của người dùng hoặc ứng dụng.
- B. Xác định quyền hạn của người dùng sau khi họ đã được xác thực.
- C. Mã hóa dữ liệu để ngăn chặn truy cập trái phép.
- D. Ghi lại các hoạt động truy cập của người dùng.
Câu 25: Quyền hạn (Authorization) trong bảo mật CSDL là quá trình gì?
- A. Kiểm tra danh tính của người dùng.
- B. Xác định những thao tác mà người dùng được phép thực hiện trên CSDL.
- C. Mã hóa dữ liệu trước khi lưu trữ.
- D. Phục hồi CSDL sau sự cố.
Câu 26: Khi thiết kế CSDL, việc xác định các ràng buộc nghiệp vụ (Business Rules) là rất quan trọng. Ví dụ: "Lương của nhân viên không được nhỏ hơn lương tối thiểu vùng". Ràng buộc này nên được cài đặt ở mức nào trong hệ thống CSDL để đảm bảo tính nhất quán?
- A. Chỉ trong mã nguồn của ứng dụng người dùng.
- B. Chỉ trong tài liệu thiết kế CSDL.
- C. Trong lược đồ CSDL (sử dụng các ràng buộc của DBMS).
- D. Chỉ do người dùng cuối tự kiểm tra khi nhập dữ liệu.
Câu 27: Trong quá trình thiết kế CSDL, giai đoạn nào tập trung vào việc mô tả cấu trúc CSDL dựa trên một mô hình dữ liệu cụ thể (ví dụ: mô hình quan hệ), xác định các bảng, cột, khóa chính, khóa ngoại và các ràng buộc?
- A. Thiết kế khái niệm (Conceptual Design)
- B. Thiết kế logic (Logical Design)
- C. Thiết kế vật lý (Physical Design)
- D. Phân tích yêu cầu (Requirements Analysis)
Câu 28: Một chỉ mục (Index) trong CSDL được tạo ra với mục đích chính là gì?
- A. Tăng tốc độ truy vấn dữ liệu (đặc biệt là các câu lệnh SELECT).
- B. Đảm bảo tính duy nhất của dữ liệu trong một cột.
- C. Giảm dung lượng lưu trữ của CSDL.
- D. Đồng bộ hóa dữ liệu giữa các bảng.
Câu 29: Giả sử bạn có bảng `SAN_PHAM` (MaSP, TenSP, GiaBan, SoLuongTon). Bạn muốn tạo chỉ mục trên cột `TenSP`. Lợi ích chính khi thực hiện điều này là gì, đặc biệt nếu bạn thường xuyên tìm kiếm sản phẩm theo tên?
- A. Đảm bảo rằng tên sản phẩm là duy nhất.
- B. Giảm dung lượng lưu trữ của bảng `SAN_PHAM`.
- C. Tăng tốc độ tìm kiếm sản phẩm dựa trên tên.
- D. Tự động cập nhật `SoLuongTon` khi có giao dịch bán hàng.
Câu 30: Trong một hệ thống CSDL lớn với nhiều người dùng truy cập đồng thời, cơ chế kiểm soát đồng thời (Concurrency Control) đóng vai trò quan trọng nhất trong việc đảm bảo tính chất nào của giao dịch?
- A. Atomicity (Nguyên tố)
- B. Consistency (Nhất quán)
- C. Isolation (Cô lập)
- D. Durability (Bền vững)