PHẦN I. Câu trắc nghiệm nhiều phương án lựa chọn.
Câu 1: Câu lệnh SQL nào dùng để lấy tất cả các trường trong bảng
"nhacsi"?
A. SELECT * FROM nhacsi
B. SELECT idNhacsi, tenNhacsi FROM nhacsi
C. SELECT nhacsi.* FROM nhacsi
D. SELECT * FROM nhacsi WHERE idNhacsi > 0
Câu
2: Để tìm kiếm các bản ghi có tên nhạc sĩ bắt đầu bằng chữ "P", câu lệnh
SQL nào là đúng?
A.
SELECT * FROM nhacsi WHERE tenNhacsi = 'P%'
B.
SELECT * FROM nhacsi WHERE tenNhacsi LIKE 'P%'x
C.
SELECT * FROM nhacsi WHERE tenNhacsi LIKE '%P%'x
D.
SELECT * FROM nhacsi WHERE tenNhacsi LIKE '%P'
Câu
3:
Trong HeidiSQL, để lọc dữ liệu với tiêu chí "LIKE", ta chọn tùy chọn
nào?
A.
Edit > Filter > LIKE
B.
Nhấp chuột phải vào cột dữ liệu, chọn Quick Filter và chọn LIKE
C.
View > Data Filter > LIKE
D.
Filter > Apply LIKE Condition
Câu
4: Để xem toàn bộ dữ liệu trong bảng "nhacsi" trong HeidiSQL, ta thực
hiện thao tác nào?
A.
Mở bảng "nhacsi" và chọn thẻ "Dữ liệu"
B.
Chọn thẻ "Truy vấn", nhập câu truy vấn SQL
C.
Chọn thẻ "Thiết kế bảng"
D.
Mở bảng "nhacsi" và nhấn F5
Câu
5: Câu lệnh SQL nào sau đây dùng để sắp xếp dữ liệu theo tên nhạc sĩ theo thứ tự
tăng dần?
A.
SELECT * FROM nhacsi ORDER BY tenNhacsi DESC
B.
SELECT * FROM nhacsi ORDER BY tenNhacsi ASC
C.
SELECT * FROM nhacsi ORDER BY idNhacsi
D.
SELECT * FROM nhacsi WHERE ORDER BY tenNhacsi ASC
Câu
6:
Trong SQL, câu lệnh nào dùng để cập nhật dữ liệu trong bảng?
A.
INSERT INTO
B.
DELETE
C.
UPDATE
D.
SELECT
Câu
7:
Lệnh nào dùng để cập nhật tên của một nhạc sĩ có id là 5 thành “Trịnh Công
Sơn”?
A.
INSERT INTO nhacsi VALUES (5, 'Trịnh Công Sơn')
B.
UPDATE nhacsi SET ten = 'Trịnh Công Sơn' WHERE id = 5
C.
DELETE FROM nhacsi WHERE id = 5
D.
SELECT * FROM nhacsi WHERE id = 5
Câu
8:
Nếu quên sử dụng mệnh đề WHERE trong câu lệnh UPDATE, điều gì sẽ xảy ra?
A.
Không có gì thay đổi
B.
Chỉ một hàng được cập nhật
C.
Toàn bộ bảng sẽ bị cập nhật
D.
Câu lệnh không hợp lệ
Câu
9:
Khi cập nhật dữ liệu có tham chiếu (khóa ngoại), cần chú ý điều gì?
A.
Đảm bảo giá trị mới tồn tại trong bảng tham chiếu
B.
Có thể nhập bất kỳ giá trị nào
C.
Không được sử dụng UPDATE
D.
Phải xóa dữ liệu trước khi cập nhật
Câu
10:
Câu lệnh SQL nào cho phép cập nhật bảng sinhvien, đặt lop thành 12A1 cho những
sinh viên có masv = 101?
A.
UPDATE sinhvien WHERE masv = 101 SET lop = '12A1'
B.
UPDATE sinhvien SET lop = '12A1' WHERE masv = 101
C.
SET lop = '12A1' UPDATE sinhvien WHERE masv = 101
D.
MODIFY sinhvien SET lop = '12A1' WHERE masv = 101
Câu 11: Khi cập nhật dữ liệu có tham
chiếu, tại sao cần kiểm tra ràng buộc toàn vẹn?
A.
Để tránh lỗi khi giá trị mới không tồn tại trong bảng tham chiếu
B.
Vì SQL không cho phép cập nhật dữ liệu có tham chiếu
C.
Để tăng tốc độ xử lý của cơ sở dữ liệu
D.
Để tiết kiệm dung lượng lưu trữ
Câu
12:
Trong MySQL, cách nào giúp bảo vệ dữ liệu khi thực hiện cập nhật hàng loạt?
A.
Dùng WHERE để chỉ định hàng cần cập nhật
B.
Dùng ORDER BY trước khi cập nhật
C.
Xóa toàn bộ dữ liệu trước khi cập nhật
D.
Không thể bảo vệ dữ liệu khi cập nhật
Câu
13:
Lệnh nào sau đây giúp lấy dữ liệu từ hai bảng có quan hệ khóa ngoại?
A.
SELECT * FROM bang1 CROSS JOIN bang2;
B.
SELECT * FROM bang1 LEFT JOIN bang2 ON bang1.id = bang2.id;
C.
SELECT * FROM bang1;
D.
SELECT * FROM bang1 WHERE id IN (SELECT id FROM bang2);
Câu
14:
Khi sử dụng INNER JOIN, kết quả sẽ bao gồm:
A.
Tất cả bản ghi từ cả hai bảng.
B.
Chỉ các bản ghi có dữ liệu trùng nhau giữa hai bảng.
C.
Tất cả bản ghi từ bảng bên trái.
D.
Tất cả bản ghi từ bảng bên phải.
Câu
15:
Trong câu lệnh:
SELECT
khachhang.makh, tenkh, COUNT(donhang.madh)
FROM
khachhang
LEFT
JOIN donhang ON khachhang.makh = donhang.makh
GROUP
BY khachhang.makh, tenkh;
Lệnh
này giúp:
A.
Đếm số đơn hàng của mỗi khách hàng.
B.
Hiển thị tất cả đơn hàng mà không quan tâm khách hàng.
C.
Chỉ lấy khách hàng có đơn hàng.
D.
Xóa dữ liệu của khách hàng không có đơn hàng.
Câu
16: Điểm khác biệt giữa LEFT JOIN và RIGHT JOIN là gì?
A.
LEFT JOIN lấy tất cả dữ liệu từ bảng bên trái, còn RIGHT JOIN lấy tất cả từ bảng
bên phải.
B.
LEFT JOIN và RIGHT JOIN luôn cho cùng một kết quả.
C.
RIGHT JOIN chỉ lấy dữ liệu có liên kết.
D.
LEFT JOIN xóa dữ liệu không liên kết.
Câu
17: Nếu một khách hàng chưa từng đặt hàng, kết quả INNER JOIN giữa khachhang và
donhang sẽ:
A.
Vẫn hiển thị khách hàng nhưng không có đơn hàng
B.
Không hiển thị khách hàng đó
C.
Hiển thị khách hàng với giá trị NULL ở cột đơn hàng
D.
Gây lỗi
Câu
18: Điều kiện nào có thể thay thế INNER JOIN để lấy dữ liệu từ hai bảng?
A.
WHERE kết hợp điều kiện liên kết
B.
HAVING
C.
ORDER BY
D.
LIMIT
Câu 19: Mục đích của
việc sao lưu dữ liệu trong HeidiSQL là gì?
A. Để bảo vệ dữ liệu khỏi mất mát
trong trường hợp xảy ra sự cố hệ thống hoặc lỗi phần mềm
B. Để tăng tốc độ truy vấn dữ liệu
C. Để thay đổi cấu trúc của cơ sở dữ liệu
D. Để giảm dung lượng của cơ sở dữ liệu
Câu 20. Trong HeidiSQL, để
thực hiện sao lưu một cơ sở dữ liệu, bạn cần phải:
A. Chạy câu lệnh SQL BACKUP DATABASE
B. Chọn cơ sở dữ liệu, nhấn chuột phải và chọn "Export database as
SQL"
C. Sử dụng công cụ sao lưu của hệ điều hành
D. Dùng công cụ "Data Export" trong MySQL Workbench
Câu 21. Khi sao lưu cơ sở dữ
liệu bằng HeidiSQL, bạn có thể xuất dữ liệu dưới định dạng nào?
A. .txt
B. .sql
C. .xlsx
D. .csv
Câu 22. Để phục hồi dữ liệu đã sao lưu từ file .sql trong HeidiSQL, bạn cần
thực hiện bước nào?
A. Chọn cơ sở dữ liệu mục tiêu và
chọn "Import SQL"
B. Mở file .sql bằng bất kỳ trình soạn thảo văn bản nào
C. Sử dụng công cụ mysqlimport
D. Dùng lệnh RESTORE DATABASE trong MySQL
Câu 23: Khi sao lưu dữ liệu
trong HeidiSQL, việc chọn "Export structure and data" có nghĩa là:
A. Chỉ sao lưu cấu trúc của cơ sở dữ
liệu mà không có dữ liệu
B. Chỉ sao lưu dữ liệu mà không có cấu trúc
C. Sao lưu cả cấu trúc và dữ liệu của cơ sở dữ liệu
D. Sao lưu dữ liệu vào một bảng mới trong cơ sở dữ liệu
Câu 24: Khi thực hiện sao
lưu dữ liệu trong HeidiSQL, bạn có thể lưu file sao lưu ở đâu?
A. Chỉ lưu trên máy chủ cơ sở dữ
liệu
B. Chỉ lưu trên máy tính cục bộ của bạn
C. Lưu ở bất kỳ vị trí nào trên máy tính của bạn
D. Chỉ lưu trên dịch vụ đám mây
PHẦN
II. Câu trắc nghiệm đúng sai.
Câu
1: Nếu
muốn quản lý thêm thông tin về ngày sinh của các ca sĩ, cơ sở dữ liệu cần thay
đổi bảng nào?
a)
Bảng banthuam
b)
Bảng bannhac
c)
Bảng casi
d)
Bảng nhacsi
Câu
2: Trong cơ sở dữ liệu, việc xác định cấu trúc bảng và khóa chính rất quan trọng
để đảm bảo tính toàn vẹn dữ liệu. Khóa chính giúp nhận diện duy nhất từng bản
ghi và liên kết dữ liệu giữa các bảng.
Câu
hỏi Đúng/Sai:
a) Một
bảng có thể có nhiều khóa chính cùng lúc.
b) Khóa
chính không thể chứa giá trị NULL.
c) Lệnh
ALTER TABLE có thể thêm hoặc xóa khóa chính.
d) Khóa
chính có thể là một hoặc nhiều cột kết hợp.
Câu
3: Khóa chính giúp đảm bảo mỗi bản ghi trong bảng là duy nhất và không có giá
trị trùng lặp. Việc xác định chính xác khóa chính giúp tối ưu hóa quá trình
truy vấn và quản lý dữ liệu hiệu quả hơn.
Câu
hỏi Đúng/Sai:
a) Một
bảng bắt buộc phải có khóa chính để lưu trữ dữ liệu.
b) Một
khóa chính có thể chứa nhiều cột.
c) Khóa
chính có thể được thay đổi bằng lệnh DROP PRIMARY KEY.
d) Một
bảng có thể có nhiều khóa chính nhưng chỉ có một khóa ngoại
Câu
4:Khi tạo cơ sở dữ liệu "mymusic" trong MySQL, bộ mã ký tự mặc định
được chọn là gì?
a)
ASCII
b)
utf8mb3
c)
utf8mb4.
d)
Latin1