Để xóa cột Quê quán của bảng ta thực hiện câu lệnh Chọn một câu trả lời: d.. Để thêm cột Quê quán vào cuối bảng ta thực hiện câu lệnh Chọn một câu trả lời: a.. Chọn câu lệnh đúng để chèn
Trang 1Câu hỏi 1 Ngôn ngữ SQL gồm những thành phần ngôn ngữ nào?
Chọn một câu trả lời:
c Ngôn ngữ định nghĩa dữ liệu, thao tác dữ liệu, điều khiển dữ liệu
Câu hỏi 2 Dòng code nào sau đây bị lỗi?
1 CREATE TABLE FRUITS_VEGETABLES
a Structured Query Language
Câu hỏi 1 Phát biểu “dùng khi muốn đảm bảo việc nhập dữ liệu cho một thuộc tính nào đó phù hợp tham chiếu tới một thuộc tính của bảng quan hệ khác” là chỉ ràng buộc nào?
Chọn một câu trả lời:
c References
Trang 2Câu hỏi 2 Các lưu ý khi sử dụng ràng buộc tham chiếu là gì?
b Chỉ định điều kiện để kiểm tra hợp lệ đối với dữ liệu khi thực hiện thao tác cập nhật cho bảng
Câu hỏi 4 Ràng buộc Not Null được sử dụng với mục đích gì?
Chọn một câu trả lời:
c Sử dụng nhằm bắt buộc phải nhập giá trị cho cột khi thêm dữ liệu vào bảng
Câu hỏi 5 Ràng buộc Primary Key được sử dụng với mục đích gì?
Chọn một câu trả lời:
a Được dùng để định nghĩa khóa chính của bảng
Câu hỏi 6 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Để tạo ràng buộc GioiTinh chỉ nhận giá trị là ‘Nam’, ‘Nữ’ ta có lựa chọn
Chọn một câu trả lời:
a Cả hai lựa chọn đều đúng
b Cả hai lựa chọn đều sai
c GioiTinh nvarchar(3) CHECK( GioiTinh = ‘Nam’ or GioiTinh = ‘Nữ’)
d GioiTinh nvarchar(3) CHECK( GioiTinh in (‘Nam’, ‘Nữ’))
Câu hỏi 7 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Câu lệnh để tạo bảng thỏa
mãn ràng buộc: Mã SV là khóa chính, Giới tính chỉ nhận giá trị Nam hoặc Nữ, Điểm TB mặc định là 2
Chọn một câu trả lời:
b CREATE TABLE SINHVIEN( MaSV varchar PRIMARY KEY, HoTen nvarchar(30), NS
datetime, GioiTinh nvarchar(3) CHECK (GioiTinh in (‘Nam’, ‘Nữ’)), DiemTB float DEFAULT(2) ) Câu hỏi 8 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Để cho phép giá trị của cột Ngày sinh bắt buộc phải nhập cho các sinh viên ta có lựa chọn
Trang 3Chọn một câu trả lời:
a NS datetime NOT NULL
Câu hỏi 9 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB, QueQuan) Để xóa cột Quê quán của bảng ta thực hiện câu lệnh
Chọn một câu trả lời:
d ALTER TABLE NHANVIEN DROP COLUMN QueQuan
Câu hỏi 10 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Để thêm cột Quê quán vào cuối bảng ta thực hiện câu lệnh
Chọn một câu trả lời:
a ALTER TABLE NHANVIEN ADD QueQuan nvarchar(30)
Câu hỏi 6 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Để tạo ràng buộc DiemTB chỉ nhận giá trị từ 0 đến 10 ta có lựa chọn
Chọn một câu trả lời:
c DiemTB float CHECK ( DiemTB>=0 and DiemTB<=10)
Câu hỏi 7 Khi thực hiện tạo bảng có mấy ràng buộc được sử dụng:
d ALTER TABLE Tên_bảng
ALTER COLUMN Tên_cột Kiểu_dữ_liệu_mới
Câu hỏi 4 Khi tạo ràng buộc tham chiếu đến môt cột của bảng nào đó Yều cầu cần đạt được là gì?Chọn một câu trả lời:
b Tên có thể khác nhau nhưng kiểu phải giống nhau
Câu hỏi 1 Ràng buộc Default được sử dụng với mục đích gì?
Chọn một câu trả lời:
Trang 4d Sử dụng nhằm xác định giá trị mặc định ban đầu cho cột
Câu hỏi 7 Cho bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB) Để tạo ràng buộc MaSV là khóa chính ta có lựa chọn
Chọn một câu trả lời:
a MaSV varchar(9) PRIMARY KEY
Câu hỏi 9 Cú pháp để thêm cột mới vào một bảng là như thế nào
c ALTER TABLE <tên bảng> ADD <tên cột> <Kiểu dữ liệu> [RBTV]
Câu hỏi 3 Cho bảng KHOA(MaKhoa, TenKhoa, DiaChi) và bảng SINHVIEN( MaSV, HoTen, NS, GioiTinh, DiemTB, MaKhoa) Câu lệnh để tạo Bảng SINHVIEN có Mã khoa được tham chiếu tương ứng
từ bảng KHOA là?
Chọn một câu trả lời:
c CREATE TABLE SINHVIEN( MaSV varchar(9) PRIMARY KEY, HoTen nvarchar(30), NS
datetime, GioiTinh nvarchar(3) DiemTB float), MaKhoa varchar(9) REFERENCES KHOA(MaKhoa))
LUYỆN TẬP 3
Câu hỏi 1 Cho bảng NHANVIEN( MaNV, HoTen, NgaySinh, HSL, QueQuan, MaPB) Câu lệnh để lấy ra các nhân viên có họ “Trần” là gì?
Chọn một câu trả lời:
a SELECT * FROM NHANVIEN WHERE HoTen like “Trần%”
b SELECT * FROM NHANVIEN WHERE HoTen = “Trần%”
c SELECT * FROM NHANVIEN
d SELECT * FROM NHANVIEN WHERE HoTen like “Trần”
Câu hỏi 2 Khi thực hiện câu lệnh DELETE cần xác định thành phần nào?
Chọn một câu trả lời:
a Tên bảng được xóa dữ liệu
b Không có thành phần nào
c Điều kiện chọn ra các dòng để xóa
d Cả hai thành phần được liệt kê
Câu hỏi 5 Khi thực hiện câu lệnh INSERT cần xác định thành phần nào?
Trang 5Chọn một câu trả lời:
a Tất cả các thành phần được liệt kê
b Các cột cần bổ sung dữ liệu
c Dữ liệu được bổ sung vào
d Tên bảng được bổ sung
Câu hỏi 3 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh thực hiện tăng thêm 0.5 vào ĐTB cho các sinh viên nam sinh vào năm 1994 là gì?
Chọn một câu trả lời:
c UPDATE SINHVIEN
SET DTB = DTB + 0.5
WHERE GioiTinh = ‘Nam’ and year(NgaySinh) = 1994
Câu hỏi 4 Cho bảng NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) Câu lệnh sau đây làmgì?
Select count(MaNV), sum(Luong) from NHANVIEN where Gioitinh = N’Nữ’
Chọn một câu trả lời:
a Đếm và tính tổng lương các nhân viên Nam
b Tất cả các phương án đều đúng
c Đếm và tính tổng lương của các nhân viên nữ
d Đếm và tính tổng lương các nhân viên
Câu hỏi 5 Cho câu lệnh tạo bảng SINHVIEN như sau:
CREATE TABLE SINHVIEN(
MaSV varchar PRIMARY KEY, HoTen nvarchar(30),
NS datetime,
GioiTinh nvarchar(3) CHECK (GioiTinh in (‘Nam’, ‘Nữ’)),
DiemTB float DEFAULT(2) )
Chọn câu lệnh đúng để chèn thêm dữ liệu vào bảng SINH VIÊN
Chọn một câu trả lời:
a INSERT INTO SINHVIEN VALUES(‘01’, ‘Đào Lan’, ‘3/4/84’, ‘Nữ’, ‘Tám’)
b INSERT INTO SINHVIEN VALUES(‘01’, ‘Đào Lan’, ‘3/4/84’, ‘Nữ’, 8)
c INSERT INTO SINHVIEN VALUES(‘01’, ‘Đào Lan’, ‘Nữ’, ‘3/4/84’, 8)
Trang 6d INSERT INTO SINHVIEN VALUES(‘01’, ‘Đào Lan’, ‘Nữ’, 8)
Câu hỏi 6 Cho bảng NHANVIEN(MaNV, HoTen, NS, HSL, Quequan,…) Câu lệnh cho biết tên nhân viên có lương thấp nhất
Chọn một câu trả lời:
a Tất cả đều đúng
b Select HoTen from NHANVIEN
c Select HoTen from NHANVIEN where HSL = min(HSL)
d Select Hoten from NHANVIEN where HSL<= (select min(HSL) from NHANVIEN)
Câu hỏi 7 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh để thực hiện xóa các sinh viên nữ là gì?
Chọn một câu trả lời:
a DELETE SINHVIEN
WHERE GioiTinh = ‘Nữ’
b DELETE FROM SINHVIEN
c DELETE FROM SINHVIEN
b SELECT <DS thuộc tính> SAI
[WHERE <điều kiện>]
[WHERE <điều kiện>]
Câu hỏi 9 Cho bảng NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) Câu lệnh để đếm và tính tổng lương của nhân viên nữ
Chọn một câu trả lời:
a Select sum(Luong) from NHANVIEN where GioiTinh = ‘Nữ’
b Select count(MaNV), sum(Luong) from NHANVIEN where GioiTinh = ‘Nữ’
Trang 7c Select count(MaNV) from NHANVIEN where GioiTinh = ‘Nữ’
d Select count(MaNV), sum(Luong) from NHANVIEN
Câu hỏi 10 NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) và PHONGBAN(MaPB, TenPB, DiaChi) Câu lệnh truy vấn sau làm gì?
Select TenPB, count(MaNV) from PHONGBAN, NHANVIEN where PHONGBAN.MaPB =
NHANVIEN.MaPB group by TenPB
Chọn một câu trả lời:
a Tất cả các phương án đều sai
b Tính tổng số nhân viên
c Tính tổng số nhân viên của từng phòng ban
d Tính tổng số nhân viên của từng phòng ban, thông kê theo tên phòng ban
Câu hỏi 1 Cho bảng NHANVIEN( MaNV, HoTen, NgaySinh, HSL, QueQuan, MaPB) Câu lệnh để lấy ra các nhân viên Nam có hệ số lương từ 3 đến 7 là gì?
Chọn một câu trả lời:
a SELECT * FROM NHANVIEN WHERE GioiTinh = ‘Nam’ and HSL >=3 and HSL <=7
b Cả hai lựa chọn đều sai
c Cả hai lựa chọn đều đúng ĐÚNG
d SELECT * FROM NHANVIEN WHERE GioiTinh = ‘Nam’ and HSL between 3 and 7
Câu hỏi 9 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh để lấy ra danh sách gồm: mã sinh viên, họ tên và ngày sinh các sinh viên là gì?
Chọn một câu trả lời:
a SELECT MaSV, HoTen, NgaySinh FROM SINHVIEN
WHERE GioiTinh=’Nữ’
b SELECT MaSV, HoTen, NgaySinh
c SELECT * FROM SINHVIEN
d SELECT MaSV, HoTen, NgaySinh FROM SINHVIEN
Câu hỏi 2 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh thực hiện xóa các sinh viên nam sinh vào năm 1994 là gì?
Chọn một câu trả lời:
a DELETE FROM SINHVIEN
WHERE year(NgaySinh) = 1994
b DELETE FROM SINHVIEN
WHERE GioiTinh = ‘Nam’ and year = 1994
Trang 8c DELETE FROM SINHVIEN
WHERE GioiTinh = ‘Nam’
d DELETE FROM SINHVIEN
WHERE GioiTinh = ‘Nam’ and year(NgaySinh) = 1994
Câu hỏi 3 Mô tả câu hỏi
Mục đích của câu lệnh SELECT là gì?
Chọn một câu trả lời:
a Được sử dụng để truy xuất lấy dữ liệu từ các dòng, các cột của một hay nhiều bảng
b Dùng để thay đổi dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó SAI
c Dùng để bổ sung thêm dữ liệu vào bảng
d Dùng để xóa dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó
Câu hỏi 7 Cho 2 bảng NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) và
PHONGBAN(MaPB, TenPB, DiaChi) Câu lệnh sau làm gì?
Select HoTen, TenPB from NHANVIEN, PHONGBAN where NHANVIEN.MaPB =
PHONGBAN.MaPB and DiaChi like ‘% Thanh Xuân%’
Chọn một câu trả lời:
a Cả hai đều đúng
b Cho danh sách các nhân viên có địa chỉ ở Thanh Xuân
c Cho danh sách gồm Họ tên và tên phòng ban của các nhân viên của phòng ban có địa chỉ ở Thanh Xuân
d Cả hai đều sai
Câu hỏi 9 Khi thực hiện câu lệnh UPDATE cần xác định thành phần nào?
Chọn một câu trả lời:
a Tên bảng được thay đổi
b Các cột cần thay đổi và giá trị mới được thay đổi
c Điều kiện chọn các dòng được thay đổi
d Tất cả các thành phần được liệt kê
Câu hỏi 10 Cho bảng NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) Câu lệnh sau đây làm gì?
Select max(year(getdate()) – year(NS)) from NHANVIEN
Chọn một câu trả lời:
a Cho biết tuổi của các nhân viên
Trang 9b Cho biết tuổi cao nhất của các nhân viên
c Cho biết tuổi cao nhất của các nhân viên nữ
d Cho biết tuổi thấp nhất của các nhân viên
Câu hỏi 2 Mục đích của câu lệnh UPDATE là gì?
Chọn một câu trả lời:
a Được sử dụng để truy xuất lấy dữ liệu từ các dòng, các cột của một hay nhiều bảng
b Dùng để thay đổi dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó
c Dùng để xóa dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó
d Dùng để bổ sung thêm dữ liệu vào bảng
Câu hỏi 5 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB, HocBong) Câu lệnh để thực hiện tăng thêm 0.5 vào ĐTB và Học bổng tăng 100000 cho các sinh viên Nam
Chọn một câu trả lời:
a UPDATE SINHVIEN
SET DTB = DTB + 0.5 and HocBong = HocBong + 100000 SAI
WHERE GioiTinh = ‘Nam’
b UPDATE SINHVIEN
SET DTB = DTB + 0.5, HocBong = HocBong + 100000 đúng
WHERE GioiTinh = ‘Nam’
c UPDATE SINHVIEN
WHERE GioiTinh = ‘Nam’
d UPDATE SINHVIEN
SET DTB = DTB + 0.5, HocBong = HocBong + 100000
Câu hỏi 6 Cho bảng NHANVIEN( MaNV, HoTen, NgaySinh, HSL, QueQuan, MaPB) Câu lệnh để lấy ra các nhân viên có họ “Trần” và sinh năm 1985 là gì?
Chọn một câu trả lời:
a SELECT * FROM NHANVIEN WHERE HoTen like “Trần%” , year(NgaySinh) = 1985
b SELECT * FROM NHANVIEN WHERE HoTen like “Trần%” and year(NgaySinh) = 1985
c SELECT * FROM NHANVIEN WHERE year(NgaySinh) = 1985
d SELECT * FROM NHANVIEN WHERE HoTen like “Trần%” and NgaySinh = 1985
Câu hỏi 8 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh để thực hiện tăng thêm 0.5 vào ĐTB cho các sinh viên nữ là gì?
Chọn một câu trả lời:
Trang 10d UPDATE SINHVIEN
SET DTB = DTB + 0.5
WHERE GioiTinh = ‘Nữ’
Câu hỏi 6 Cho bảng NHANVIEN( MaNV, HoTen, NgaySinh, HSL, QueQuan, MaPB) Câu lệnh để
lấy ra các nhân viên không có họ “Trần” là gì?
Chọn một câu trả lời:
c SELECT * FROM NHANVIEN WHERE HoTen not like “Trần%”
Câu hỏi 8 Cho bảng NHANVIEN(MaNV, HoTen, NS, HSL, Quequan,…) Câu lệnh cho biết tên nhân viên có lương cao nhất
Chọn một câu trả lời:
c Select Hoten from NHANVIEN where HSL>= (select max(HSL) from NHANVIEN)
Câu hỏi 10 Cho bảng SINHVIEN( MaSV, HoTen, NgaySinh, GioiTinh, DTB) Câu lệnh để lấy ra danh sách gồm: mã sinh viên, họ tên và ngày sinh của các sinh viên Nam là gì?
Chọn một câu trả lời:
a SELECT MaSV, HoTen, NgaySinh FROM SINHVIEN
WHERE GioiTinh = ‘Nam’
Câu hỏi 2 Cho bảng NHANVIEN(MaNV, HoTen, NS, GioiTinh, Luong, MaPB) Câu lệnh để đếm số nhân viên của từng phòng ban?
Trang 11CREATE VIEW Test
a View chứa dữ liệu
b Table và View đều chứa dữ liệu
c View không chứa dữ liệu
d Table không chứa dữ liệu
Câu hỏi 5 Trong View, nếu có mệnh đề ORDER BY thì phải có sử dụng kèm theo từ khoá nào?Chọn một câu trả lời:
Câu hỏi 8 Truy vấn nào không thực hiện được trên View sau
CREATE VIEW Test
AS
Trang 12SELECT MaNV, Hoten, Ngaysinh
Câu hỏi 5 Truy vấn nào không thực hiện được trên view sau:
CREATE VIEW Test
b SELECT *FROM vTest
Câu hỏi 10 Từ khoá nào sau đây không dùng khi tạo View?
Chọn một câu trả lời:
b SET
Câu hỏi 1 Truy vấn nào được sử dụng trong nội dung View
Trang 13Chọn một câu trả lời:
d SELECT
Câu hỏi 4 Trật tự các bản ghi trên View được quyết định bởi?
Chọn một câu trả lời:
c Truy vấn lấy dữ liệu của View ĐÚNG
Câu hỏi 7 Không sửa được giá trị ở cột (trường) nào của View sau:CREATE VIEW Test
SELECT MaDAFROM DEAN
Câu hỏi 7 View có thể được sử dụng để
Chọn một câu trả lời:
a Thay đổi cách nhìn với dữ liệu trong các bảng
b Phân cấp truy cập đến dữ liệu ở mức trường
c Phân cấp truy cập đến dữ liệu ở mức bản ghi
d Cả 3 phương án đều đúng
Câu hỏi 8 Điều gì xảy ra sau khi ta xoá 1 bản ghi trên View?
Chọn một câu trả lời:
b Bản ghi ở bảng nguồn bị xoá ĐÚNG
Câu hỏi 10 Dữ liệu sẽ được lưu ở đâu sau khi ta thêm dữ liệu qua 1 view?Chọn một câu trả lời:
a Trong bảng nguồn của View ĐÚNG
Câu hỏi 3 Truy vấn xoá View nào sau đây là đúng?
Trang 14Chọn một câu trả lời:
d DROP VIEW Test
Câu hỏi 3 Truy vấn nào không thực hiện được trên View sau:
CREATE VIEW Test
b CREATE PROCEDURE spMax
@a INT, @b INT, @c INT
SELECT TenHang, Sum(SoLuong*DonGia)
FROM CT_HOADON, HANGHOA
WHERE CT_HOADON.MaHH= HANGHOA.MaHH
Trang 15GROUP BY TenHang HAVING sum(SoLuong*DonGia)>10000000
Chọn một câu trả lời:
c Cho biết tên và tổng số tiền hàng đã bán của các mặt hàng mà đã bán được trên 10 triệu Câu hỏi 3
Stored Procedure Test có lệnh cuối cùng là: RETURN 1
Truy vấn gọi thực thi nào sau đây là đúng và lấy được giá trị trả về từ Stored Procedure Test?
Truy vấn nào sau đây dùng để thực thi Stored Procedure Test tạo bởi truy vấn:
CREATE PROCEDURE Test
Trang 16Cho bảng HANGHOA(MaHH, TenHH, DonGia) và CT_HOADON(MaHD, MaHH, SoLuong) Câu lệnhsau làm gì?
SELECT TenHang, Sum(SoLuong*DonGia)
FROM CT_HOADON, HANGHOA
WHERE CT_HOADON.MaHH= HANGHOA.MaHH
a Dùng để xóa dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó
b Dùng để thay đổi dữ liệu của bảng một cách tự động dựa vào điều kiện nào đó
c Dùng để bổ sung thêm dữ liệu vào bảng
d Được sử dụng để truy xuất lấy dữ liệu từ các dòng, các cột của một hay nhiều bảng
Câu hỏi 6
Truy vấn sau đây sai cú pháp, hãy giải thích tại sao?
CREATE PROCEDURE Test
SELECT *FROM NHANVIEN
Chọn một câu trả lời:
a Thiếu từ khoá “AS” trước truy vấn SELECT
Câu hỏi 7
Trang 17Truy vấn nào sau đây tạo được Stored Procedure cho xem (lấy) danh sách các nhân viên ít tuổi nhất?Chọn một câu trả lời:
a CREATE PROCEDURE spNhanvienTre
AS
BEGIN
DECLARE @m INT;
SELECT @m=MAX(YEAR(Ngaysinh)) FROM NHANVIEN;
SELECT *FROM NHANVIENWHERE YEAR(Ngaysinh)=@m;
END
Câu hỏi 9
Truy vấn nào không thực hiện được trên View sau:
CREATE VIEW Test
b Trong mệnh đề WHERE của truy vấn con tham chiếu ít nhất một thuộc tính của các quan hệ
trong mệnh đề FROM ở truy vấn cha
Câu hỏi 19
Cú pháp nào sau đây dùng để xoá Stored Procedure có tên là “Test”?
Chọn một câu trả lời: