Cho CSDL gồm 2 bảng:
DUAN ( MADA, TENDA, DIADIEM, NgayBD, MAPB)
PHANCONG MADA, MANV, SoGio, NgLamDA)
Viết trigger để kiểm soát ngày làm gia dự của nhân viên phải sau ngày dự án đó bắt đầu
A. Không có phương án nào đúng
B. CREATE TRIGGER CHECK_NGAY_THAM_GIA_DA
ON PHANCONG
AFTER UPDATE, INSERT
AS
IF UPDATE(NgayThamGia) --Kiểm tra việc cập nhật trên cột
BEGIN
SET @NgTG = (SELECT NgLamDA FROM INSERTED)
SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTED
WHERE DEAN.MaDA = INSERTED.MaDA)
IF ( @NgTG < @NgBD )
BEGIN
raiserror(N'Ngày Tham gia phải sau ngày Bắt đầu',16,1)
END
END
C. CREATE TRIGGER CHECK_NGAY_THAM_GIA_DA
ON PHANCONG
AFTER UPDATE, INSERT
AS
IF UPDATE(NgayThamGia) --Kiểm tra việc cập nhật trên cột
BEGIN
declare @NgTG datetime, @NgBD datetime
SET @NgTG = (SELECT NgLamDA FROM INSERTED)
SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTED
END
END
D. CREATE TRIGGER CHECK_NGAY_THAM_GIA_DA
ON PHANCONG
AFTER UPDATE, INSERT
AS
IF UPDATE(NgayThamGia) --Kiểm tra việc cập nhật trên cột
BEGIN
declare @NgTG datetime, @NgBD datetime
SET @NgTG = (SELECT NgLamDA FROM INSERTED)
SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTED
WHERE DEAN.MaDA = INSERTED.MaDA)
IF ( @NgTG < @NgBD )
BEGIN
raiserror(N'Ngày Tham gia phải sau ngày Bắt đầu',16,1)
END
END
Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đâu là câu truy vấn để cho danh sách tên các sản phẩm có đơn giá từ 50000 đến 100000
A. Select sTenSP
From tblSANPHAM
Where fDongia>50000
B. Select sTenSP
From tblSANPHAM
Where fDongia between 50000 and 100000
C. Select *
From tblSANPHAM
Where fDongia between 50000 and 100000
D. Select sTenSP
From tblSANPHAM
Where fDongia>50000 and fDongia<100000
Hàm nào trong SQL Server trả về ngày hiện tại của hệ thống?
A. now()
B. currentdate()
C. Date()
D. Getdate()
Câu lệnh nào không được phép dùng trong khối lệnh T-SQL?
A. Update
B. Create
C. Select colum1, column2,...
D. Delete
Declare
@a int = 5,
@b int = null,
@c int = 10
Begin
if @a > @b AND @a < @c set @a=@c*@a
select @a
End
Giá trị của a sẽ là?
A. Tất cả các đáp án đều sai
B. 5
C. Null
D. 50
Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đâu là câu truy vấn để tính tổng số tiền của tất cả các sản phẩm đang có
A. Select sXuatSu, sum(iSoluong)
From tblSANPHAM
B. Select sum(iSoluong*fDonGia)
From tblSANPHAM
Group by sXuatSu
C. Select sum(iSoluong*fDonGia)
From tblSANPHAM
D. Select sum(iSoluong)
From tblSANPHAM
Hãy tìm lỗi trong thủ tục sau:Create proc prc1ASDeclare @a smallintDeclare @b smallintSet @a = 1Set @b= 1While (@a <=10)BeginWhile (@a <5) AND (@b>1) or (@b<3)BeginSet @a= @a+@bSet @b=@b+1EndEndreturn
A. Vòng lặp không kết thúc
B. Không có kiểu dữ liệu smallint
C. Tên thủ tục prc1 sai
D. Không cho phép 2 vòng lăp while lồng nhau
Lệnh sửa đổi 1 thủ tục có tên là prcPrintStoreList như sau:ALTER PROCEDURE prcPrintStoreList @state char(15)ASBEGINIF EXISTS(SELECT * FROM Stores WHERE state=@state)BEGINPRINT 'List of Stores'SELECT stor_id,stor_name, stor_address,cityFROM Stores WHERE state = stateReturn 0ENDELSEBEGINPRINT 'No Records Found for given state'RETURN 1ENDENDHãy xác định kết quả sửa đổi này
A. Lỗi khi chạy thủ tục (Run-time error )
B. Lỗi biên dịch ( Compile-time error )
C. 1
Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu) và tblCTHOADON (sMaHD, sMaSP, iSLM), tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)
Đâu là thủ tục để cho danh sách tên sản phẩm đã được bán trong một tháng của một năm nào đó?
A. CREATE PROC spTenSP(int @m, int @y)
As
BEGIN
Select sTenSP
From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C
Where month(dNgayLap) = @m and year(dNgayLap) = @y
END
B. CREATE PROC spTenSP
As
BEGIN
Select sTenSP
From tblSANPHAM as A, tblCTHOADON as B
Where A.sMaSP = B.sMaSP
END
C. CREATE PROC spTenSP(int @m, int @y)
As
BEGIN
Select sTenSP
From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C
Where month(dNgayLap) = @m and year(dNgayLap) = @y and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHD
END
D. CREATE PROC spTenSP
As
BEGIN
Declare int @m, int @y
Select sTenSP
From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C
Where month(dNgayLap) = @m and year(dNgayLap) = @y and A.sMaSP = B.sMaSP
END
Muốn tính tổng lương của phòng Kế Toán, ta cần dùng hàm nào?
A. COUNT(fLuong)
B. AVG(fLuong)
C. SUM(fLuong)
D. MAX(fLuong)
Khi thực hiện câu lệnh tạo bảng, chức năng của `UNIQUE` là?
A. Gộp cột
B. Cho phép dữ liệu rỗng
C. Gán giá trị mặc định
D. Không cho phép nhập trùng giá trị
Câu lệnh `ALTER TABLE` dùng để làm gì?
A. Tạo bảng mới
B. Xóa bảng đã có
C. Chèn dữ liệu vào bảng
D. Sửa cấu trúc bảng
Cơ sở dữ liệu “Quản lý nhân viên” sau đươc tạo ra được lưu với tên file là gì?
CREATE DATABASE QlyNhanVien
ON
(Name = “QLNV”,
Filename = “D:\DATA\QLNV.mdf”)
A. QLNV.mdf
B. QuanLyNV.mdf
C. QuanlyNhanVien.mdf
D. QLNhanvien.mdf
Câu lệnh nào xóa cột `sDiaChi` khỏi bảng `tblNhanVien`?
A. ALTER TABLE tblNhanVien
DROP COLUMN sDiaChi
B. DELETE COLUMN sDiaChi
FROM tblNhanVien
C. REMOVE sDiaChi
FROM tblNhanVien
D. MODIFY tblNhanVien
DROP sDiaChi
Khi thực hiện tạo bảng, ràng buộc `CHECK` dùng để?
A. Gán giá trị mặc định cho thuộc tính
B. Xóa dữ liệu đã có của bảng
C. Tạo khóa chính cho bảng
D. Kiểm tra điều kiện dữ liệu của một thuộc tính
Một cơ sở dữ liệu chứa ít nhất là?
A. 1 file mdf
B. 1 file mdf và 1 file ndf
C. 1 file mdf, 1 file ndf và 1 file ldf
D. 1 file mdf và 1 file ldf
Cấu hình nào sau đây được Windows cung cấp sẵn, dùng làm kết nối trung gian giữa ứng dụng và các hệ quản trị CSDL?
A. Net-Library
B. ODBC
C. OLE DB
D. Kết nối mạng trên Server
Tập tin có phần mở rộng là .ndf được dùng để làm gì?
A. Chứa dữ liệu chính
B. Ghi lại các thay đổi dữ liệu giúp thực hiện rollback khi cần
C. Chỉ dùng khi cơ sở dữ liệu được phân chia chứa trên nhiều đĩa
Phiên bản Enterprise của SQL Server chứa đầy đủ các đặc trưng của SQL Server và có thể chạy tốt trên hệ thống lên đến?
A. 4 CPU và 2 GB RAM
B. 32 CPUs và 64 GB RAM
C. 64 CPUs và 128 GB RAM
D. 16 CPUs và 32 GB RAM