1. Ràng buộc NOT NULL áp dụng cho một cột trong bảng có ý nghĩa gì?
A. Cột đó không được phép chứa giá trị trùng lặp.
B. Cột đó không được phép chứa giá trị rỗng (NULL).
C. Cột đó phải được sử dụng làm khóa chính.
D. Cột đó chỉ có thể chứa các giá trị số.
2. SQL là viết tắt của gì?
A. System Query Language
B. Structured Query Language
C. Sequential Query Language
D. Standard Query Language
3. Ràng buộc UNIQUE áp dụng cho một cột có ý nghĩa gì?
A. Cột đó không được phép chứa giá trị rỗng (NULL).
B. Cột đó phải được sử dụng làm khóa chính.
C. Tất cả các giá trị trong cột phải là duy nhất, không được trùng lặp (nhưng có thể chứa NULL).
D. Cột đó chỉ có thể chứa các giá trị là chuỗi ký tự.
4. 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 bao gồm Mã sách, Tên sách, Tác giả, Năm xuất bản. Mỗi cuốn sách có thể có nhiều bản sao. Bạn sẽ tổ chức các bảng như thế nào để tránh dư thừa thông tin và đảm bảo tính nhất quán?
A. Một bảng Sach với các cột Mã sách, Tên sách, Tác giả, Năm xuất bản, Số bản sao.
B. Hai bảng: Sach (Mã sách, Tên sách, Tác giả, Năm xuất bản) và BanSao (Mã bản sao, Mã sách, Tình trạng).
C. Hai bảng: Sach (Mã sách, Tên sách, Tác giả) và XuatBan (Năm xuất bản, Mã sách).
D. Một bảng ThưViện với các cột Mã sách, Tên sách, Tác giả, Năm xuất bản, Mã bản sao, Tình trạng.
5. Mục đích chính của việc sử dụng chỉ mục (index) trong cơ sở dữ liệu là gì?
A. Tăng dung lượng lưu trữ của cơ sở dữ liệu.
B. Giảm số lượng bảng trong cơ sở dữ liệu.
C. Tăng tốc độ truy vấn và tìm kiếm dữ liệu.
D. Đảm bảo tính toàn vẹn của dữ liệu bằng cách loại bỏ trùng lặp.
6. Để hiển thị tất cả các cột từ bảng NhânViên, câu lệnh SQL nào là chính xác?
A. SELECT * FROM NhânViên;
B. SELECT NhânViên.* FROM NhânViên;
C. SELECT ALL FROM NhânViên;
D. SELECT NhânViên FROM NhânViên;
7. Trong thiết kế cơ sở dữ liệu, chuẩn hóa (normalization) là quá trình nhằm mục đích gì?
A. Tăng cường bảo mật bằng cách mã hóa dữ liệu.
B. Giảm dư thừa dữ liệu và tránh các vấn đề như insertion, update, deletion anomalies.
C. Mở rộng khả năng lưu trữ cho các loại dữ liệu khác nhau.
D. Tự động hóa quá trình sao lưu và phục hồi dữ liệu.
8. Khóa chính (Primary Key) của một bảng có những đặc điểm nào sau đây?
A. Có thể chứa giá trị NULL và có thể trùng lặp.
B. Không thể chứa giá trị NULL và không được trùng lặp.
C. Có thể chứa giá trị NULL nhưng không được trùng lặp.
D. Có thể trùng lặp nhưng không được chứa giá trị NULL.
9. Trong một cơ sở dữ liệu, một lược đồ (schema) thường bao gồm những gì?
A. Chỉ các dữ liệu đã được nhập vào.
B. Cấu trúc của cơ sở dữ liệu, bao gồm các bảng, cột, kiểu dữ liệu, mối quan hệ và ràng buộc.
C. Các tệp sao lưu của cơ sở dữ liệu.
D. Các báo cáo đã được tạo ra từ dữ liệu.
10. Một trường Ngày sinh được lưu trữ dưới dạng văn bản chuỗi (text string) 2003-12-25. Nếu muốn thực hiện các phép so sánh theo thứ tự thời gian hoặc tính toán tuổi, kiểu dữ liệu nào sau đây sẽ phù hợp và hiệu quả hơn?
A. VARCHAR
B. INT
C. DATE hoặc DATETIME
D. TEXT
11. Nếu bạn muốn xóa một bản ghi cụ thể khỏi bảng SảnPhẩm dựa trên Mã sản phẩm, bạn sẽ sử dụng câu lệnh SQL nào?
A. REMOVE FROM SảnPhẩm WHERE MãSP = XYZ
B. DELETE FROM SảnPhẩm WHERE MãSP = XYZ
C. DROP FROM SảnPhẩm WHERE MãSP = XYZ
D. ERASE FROM SảnPhẩm WHERE MãSP = XYZ
12. Một quan hệ trong cơ sở dữ liệu quan hệ tương đương với khái niệm nào sau đây trong thực tế?
A. Một thuộc tính.
B. Một bản ghi.
C. Một bảng.
D. Một khóa.
13. Bạn đang quản lý cơ sở dữ liệu về khách hàng. Có một bảng KhachHang với các cột Mã khách hàng, Tên, Địa chỉ, Số điện thoại. Nếu bạn muốn chỉ hiển thị những khách hàng có Địa chỉ là Hà Nội, bạn sẽ thêm điều kiện nào vào câu lệnh SELECT?
A. ORDER BY DiaChi = Hà Nội
B. GROUP BY DiaChi HAVING DiaChi = Hà Nội
C. WHERE DiaChi = Hà Nội
D. FILTER DiaChi = Hà Nội
14. Trong cơ sở dữ liệu, toàn vẹn dữ liệu (data integrity) đề cập đến điều gì?
A. Khả năng truy cập dữ liệu nhanh chóng từ mọi nơi.
B. Độ chính xác, nhất quán và tin cậy của dữ liệu.
C. Bảo mật dữ liệu khỏi truy cập trái phép.
D. Khả năng mở rộng hệ thống khi có nhiều người dùng.
15. Khóa ngoại (Foreign Key) trong cơ sở dữ liệu quan hệ có vai trò gì?
A. Đảm bảo tính toàn vẹn của dữ liệu bằng cách định danh duy nhất mỗi bản ghi trong bảng.
B. Xác định mối quan hệ giữa hai bảng, liên kết các bản ghi từ bảng này với bảng khác.
C. Chỉ định các trường không được phép chứa giá trị rỗng (NULL).
D. Tăng tốc độ truy vấn dữ liệu bằng cách tạo các chỉ mục.
16. Khi bạn thấy một thuộc tính được gạch chân trong sơ đồ quan hệ, điều đó thường biểu thị điều gì?
A. Thuộc tính đó là khóa ngoại.
B. Thuộc tính đó là khóa chính.
C. Thuộc tính đó có thể chứa giá trị NULL.
D. Thuộc tính đó là duy nhất.
17. Câu lệnh SQL nào sau đây được dùng để thay đổi dữ liệu đã có trong bảng?
A. ALTER
B. MODIFY
C. UPDATE
D. CHANGE
18. Khi hai bảng có mối quan hệ một-nhiều (one-to-many), ví dụ: một Khách hàng có thể có nhiều Đơn hàng, thì khóa ngoại thường được đặt ở đâu?
A. Ở bảng Khách hàng (bên một).
B. Ở bảng Đơn hàng (bên nhiều).
C. Ở cả hai bảng.
D. Không cần khóa ngoại trong mối quan hệ một-nhiều.
19. Bạn cần tìm tất cả các đơn hàng có tổng giá trị lớn hơn 1.000.000 VNĐ. Giả sử bảng DonHang có cột TongGiaTri lưu trữ giá trị này. Điều kiện lọc nào sau đây là đúng?
A. WHERE TongGiaTri < 1000000
B. WHERE TongGiaTri = 1000000
C. WHERE TongGiaTri > 1000000
D. WHERE TongGiaTri >= 1000000
20. Trong SQL, từ khóa JOIN được sử dụng để làm gì?
A. Xóa dữ liệu khỏi bảng.
B. Thêm một bảng mới vào cơ sở dữ liệu.
C. Kết hợp các hàng từ hai hoặc nhiều bảng dựa trên một cột liên quan.
D. Thay đổi cấu trúc của một bảng.
21. Trong SQL, câu lệnh nào được sử dụng để lấy dữ liệu từ một hoặc nhiều bảng?
A. INSERT
B. UPDATE
C. DELETE
D. SELECT
22. Đâu là một ví dụ về kiểu dữ liệu số nguyên (integer) trong SQL?
A. VARCHAR(255)
B. FLOAT
C. INT
D. BOOLEAN
23. Trong mô hình quan hệ, mỗi bảng (hay quan hệ) được định nghĩa bởi tập hợp các thuộc tính (attributes) và các bộ (tuples). Thuộc tính đại diện cho khía cạnh nào của dữ liệu trong một bảng?
A. Các bản ghi hoặc dòng dữ liệu.
B. Các cột, mỗi cột đại diện cho một đặc tính của đối tượng được mô tả.
C. Các khóa chính để định danh duy nhất các bộ.
D. Các mối quan hệ giữa các bảng khác nhau.
24. Trong mô hình quan hệ, một bộ (tuple) tương đương với khái niệm nào sau đây trong thực tế?
A. Một cột dữ liệu.
B. Một bảng dữ liệu.
C. Một bản ghi hoặc một dòng dữ liệu.
D. Một khóa.
25. Nếu bạn muốn tạo một bảng mới có tên là SinhVien với các cột Mã sinh viên (kiểu số nguyên, là khóa chính), Tên (kiểu chuỗi), và Điểm trung bình (kiểu số thực), câu lệnh SQL nào sau đây là đúng?
A. CREATE TABLE SinhVien (MaSV INT PRIMARY KEY, Ten VARCHAR(50), DiemTB FLOAT);
B. ADD TABLE SinhVien (MaSV INT PRIMARY KEY, Ten VARCHAR(50), DiemTB FLOAT);
C. CREATE NEW TABLE SinhVien (MaSV INT PRIMARY KEY, Ten VARCHAR(50), DiemTB FLOAT);
D. MAKE TABLE SinhVien (MaSV INT PRIMARY KEY, Ten VARCHAR(50), DiemTB FLOAT);