Hệ quản trị CSDL - IT10 (253)
Lệnh SELECT thường được sử dụng để làm gì
A. Xóa cột
B. Tạo bảng mới
C. Chèn cột
D. Truy vấn dữ liệu
Câu lệnh SELECT * FROM tblNhanVien thực hiện yêu cầu gì?
A. Chọn tất cả các dòng dữ liệu đã nhập trong bảng tblNhanVien
B. Chọn dòng dữ liệu đầu tiên của bảng tblNhanVien
C. Cập nhật dữ liệu trong bảng tblNhanVien
D. Xóa tất cả dữ liệu trong bảng tblNhanVien
Câu lệnh nào đúng để đếm số nhân viên có lương > 5000 của mỗi phòng ban trong bảng tblNV
A. SELECT sPhong, COUNT(fLuong > 5000) FROM tblNV
B. SELECT sPhong, COUNT(*) FROM tblNV GROUP BY sPhong
C. SELECT sPhong, COUNT(*) FROM tblNV WHERE fLuong > 5000 GROUP BY sPhong
D. SELECT COUNT(*) FROM tblNV WHERE fLuong > 5000
Cú pháp nào để thực hiện cập nhật dữ liệu trong bảng?
A. EDIT FROM bảng WHERE cột = giá_trị
B. MODIFY bảng SET cột = giá_trị
C. UPDATE bảng SET cột = giá_trị WHERE điều_kiện
D. CHANGE bảng VALUE cột
Khảo sát thủ tục sau:Create procedure prcTemp@tmp int outputAsSelect @tmp=ytd_sales from titlesReturnHãy xác định lệnh SQL được dùng để hiển thị giá trị của biến đầu ra khi thủ tục này được gọi :
A. Declare @temp intExec prcTemp @tmp=@temp outputPrint @temp
B. Declare @tmp int Exec prcTemp @tmp Print @tmp
C. Exec prcTemp @tmp output Print @tmp
D. Declare @temp int Exec prcTemp @tmp=@tempPrint @temp
Phát biểu nào sau đây mô tả thuộc tính atomicity của 1 transaction ?
A. Mọi dữ liệu đều ở trạng thái không thay đổi sau khi transaction đã thực hiện thành công
B. Bất kỳ thay đổi dữ liệu được thực hiện bởi một transaction vẫn giữ nguyên hiệu quả sau khi transaction hoàn tất
C. Việc chỉnh sửa dữ liệu được làm bởi 1 transaction này thì độc lập với việc chỉnh sửa dữ liệu của 1 transaction khác
D. Mọi chỉnh sửa trong 1 transaction hoặc được thi hành hết hoặc không có 1 chỉnh sửa nào được thực hiện
Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đoạn thủ tục sau thực hiện yêu cầu xử lý gì?
CREATE PROC spTenSP(nvarchar @xs)
As
BEGIN
Select sTenSP
From tblSANPHAM
Where sXuatSu = @xs
END
A. Cho danh sách thông tin đầy đủ các sản phẩm
B. Cho danh sách tên các sản phẩm có xuất xứ nước ngoài
C. Cho danh sách tên sản phẩm theo một xuất sứ nào đó với xuất sứ là tham số truyền vào
D. Cho danh sách thông tin đầy đủ các sản phẩm theo một một xuất sứ nào đó với xuất sứ là tham số truyền vào
Xác định ý nghĩa thủ tục sau:CREATE PROC get_playername @sport_id varchar(10)ASSELECT player_lname, player_fnameFROM sports WHERE sport_id = @sport_id
A. Thủ tục có 1 tham số vào là sport_id và sẽ hiển thị tên các môn thể thao mà có Id không bằng với tham số đầu vào
B. Thủ tục có 1 tham số vào là sport_id và sẽ hiển thị tên vận động viên (player) mà có Id bằng với tham số đầu vào
C. Thủ tục có 1 tham số vào là sport_id và sẽ hiển thị tên các môn thể thao mà có Id bằng với tham số đầu vào
D. Thủ tục có 1 tham số vào là sport_id và sẽ hiển thị tên vận động viên (player) mà có Id không bằng với tham số đầu vào
Kết quả của câu truy vấn sau là gì?
SELECT (25%5) ,(8%2.5)
A. 0 và 2
B. 0 và 0.5
C. 5 và 4.5
D. Câu lệnh gây ra lỗi.
Cho CSDL quản lý sản phẩm với bảng tblNHANVIEN gồm các dòng dữ liệu:
Cho biết kết quả của câu lệnh truy vấn sau:
Select sHoten
From tblNHANVIEN
Where sGioitinh = N’Nam’
Cho CSDL quản lý sản phẩm với bảng tblSANPHAM gồm các dòng dữ liệu:
Cho biết kết quả của câu lệnh truy vấn sau:
Select sTenSP
From tblSANPHAM
Where fDonGia > 50000 and sXuatSu = N’Pháp’
Kết quả của đoạn T-SQL sau sẽ như thế nào?
DECLARE
@X VARCHAR(10) = 'TITL',
@Y VARCHAR(10) = 'TITLE'
BEGIN
IF @X >= @Y
print('X is greater')
IF @Y >= @X
print('Y is greater')
END
A. “X is greater”
B. “Y is greater”
C. Không in ra gì cả
D. Cả “X is greater” và “Y is greater”
Đặc điểm của trigger là gì?
A. Trigge chỉ có thể thực hiện một công việc và được thực hiện bằng câu lệnh được gọi
B. Trigger có thể thực hiện nhiều công việc và được thực hiện tự động thông qua sự kiện
C. Trigger chỉ có thể thực hiện một công việc và được thực hiện tự động thông qua sự kiện
D. Trigger có thể thực hiện nhiều công việc và được thực hiện bằng câu lệnh được gọi
Cho CSDL quản lý bán hàng gồm hai bảng:
tblKHACHHANG(sSdtKH, sTenKH, SoHoaDon)
tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)
Đoạn mã trigger để cho phép mỗi lần chèn thêm một hóa đơn mới thì tổng số hóa đơn của khách hàng được tăng lên tương ứng một đơn vị
A. CREATE TRIGGER ThemHoaDon
ON tblHOADON
Instead of Insert
Begin
Declare @soDT nvarchar(10)
Select @soDT = sSDTKH From tblHOADON Update tblKHACHHANG Set SoLanMua = SoLanMua + 1 Where sSdtKH = @soDT end
B. CREATE TRIGGER ThemHoaDon
ON tblHOADON
Instead of Insert
Begin
Declare @soDT nvarchar(10)
Update tblKHACHHANG Set SoLanMua = SoLanMua + 1 Where sSdtKH = @soDT end
C. CREATE TRIGGER ThemHoaDon
ON tblHOADON
Instead of update
Begin
Declare @soDT nvarchar(10)
Select @soDT = sSDTKH From inserted Update tblKHACHHANG Set SoLanMua = SoLanMua + 1 Where sSdtKH = @soDT end
D. CREATE TRIGGER ThemHoaDon
ON tblHOADON
Instead of Insert
Begin
Declare @soDT nvarchar(10)
Select @soDT = sSDTKH From inserted Update tblKHACHHANG Set SoLanMua = SoLanMua + 1 Where sSdtKH = @soDT end
Ý nghĩa của đoạn mã sau là gì?
CREATE TRIGGER TG_PC
ON PHANCONG
INSTEAD OF insert
AS
BEGIN
declare @tg as float
SELECT @tg = SoGio from INSERTED
if (@tg<5 and @tg>10)
Raiserror('Thoi gian chi nhap tu 5 den 10', 16,1)
END
A. Đoạn mã tạo trigger cho phép nhập số giờ của nhân viên chỉ là từ 5 đến 10 khi thêm phân công nhân viên thực hiện dự án
B. Tạo trigger khi nhập dữ liệu phân công có số giờ hoặc dưới 5 hoặc trên 10
C. Tạo trigger khi sửa phân công chỉ được nhận giá trị từ 5 đến 10
D. Tất cả các phương án đều đúng
Cho hai bảng
tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV, TongTien)
tblCTHOADON (sMaHD, sMaSP, iSL, fDG)
Đoạn Trigger nào để thực hiện yêu cầu: Mỗi khi thêm một dòng mới vào bảng tblCTHOADON thì tổng tiền của tblHOADON với mã tương ứng được tăng theo tuỳ theo số lượng và đơn giá được nhập vào
A. CREATE TRIGGER themCTHD ON tblCTHOADON Instead of Insert As Begin Update tblHOADON Set TongTien = TongTien + iSL * fDG Where sMaHD = @soHD End
B. CREATE TRIGGER themCTHD ON tblCTHOADON Instead of Insert As Begin Update tblHOADON Set TongTien = TongTien + iSL * fDG End
C. CREATE TRIGGER themCTHD ON tblHOADON Instead of Insert As Begin Declare int @sl, float @dg, nvarchar(9) @soHD Select @sl = iSL, @dg = fDG, @soHD = sMaHD From insterted Update tblHOADON Set TongTien = TongTien + @sl * @dg Where sMaHD = @soHD End
D. CREATE TRIGGER themCTHD ON tblCTHOADON Instead of Insert As Begin Declare int @sl, float @dg, nvarchar(9) @soHD Select @sl = iSL, @dg = fDG, @soHD = sMaHD From insterted Update tblHOADON Set TongTien = TongTien + @sl * @dg Where sMaHD = @soHD End
Cho các bảng
LOP( malop, TenLop, NienKhoa, SiSo)
SINHVIEN ( MaSV, Hoten, NS, GT, maLop)
Viết trigger khi sưar một lớp nào đó thì các sinh viên thuộc lớp đó cũng sửa theo.
A. CREATE TRIGGER UpdateMaLop ON LOP FOR UPDATE AS BEGIN IF UPDATE( MaLop) BEGIN DECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9) SELECT @MaLopCu = MaLop FROM DELETED SELECT @MaLopMoi = MaLop FROM INSERTED If ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) ) UPDATE SINHVIEN SET MaLop = @MaLopMoi WHERE MaLop = @MaLopCu END END
B. CREATE TRIGGER UpdateMaLop
ON LOP
FOR UPDATE
AS
BEGIN
IF UPDATE( MaLop)
BEGIN
SELECT @MaLopCu = MaLop FROM DELETED
SELECT @MaLopMoi = MaLop FROM INSERTED
If ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) ) UPDATE SINHVIEN SET MaLop = @MaLopMoi WHERE MaLop = @MaLopCu END END
C. CREATE TRIGGER UpdateMaLop ON LOP FOR UPDATE AS BEGIN IF UPDATE( MaLop) BEGIN DECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9) SELECT @MaLopCu = MaLop FROM DELETED SELECT @MaLopMoi = MaLop FROM INSERTED END END
D. CREATE TRIGGER UpdateMaLop ON SINHVIEN FOR UPDATE AS BEGIN IF UPDATE( MaLop) BEGIN DECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9) SELECT @MaLopCu = MaLop FROM DELETED SELECT @MaLopMoi = MaLop FROM INSERTED If ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) ) UPDATE SINHVIEN SET MaLop = @MaLopMoi WHERE MaLop = @MaLopCu END END
Câu lệnh sau thực hiện công việc gì?
DENY SELECT, INSERT, UPDATE
ON TacGia
TO db_user1, db_user2
A. Từ chối quyền được phép chọn – chèn và sửa trên bảng TacGia với tất cả các tài khoản
B. Từ chối quyền được phép chọn – chèn và sửa trên bảng TacGia với tài khoản db_user1 và db_user2
C. Từ chối quyền được phép xoa – chọn và sửa trên bảng TacGia với tài khoản db_user1 và db_user2
D. Từ chối quyền được phép chọn sửa trên bảng TacGia với tài khoản db_user1 và db_user2
Sự khác biệt cơ bản giữa dettach và xóa CSDL?
A. CSDL xóa hẳn nhưng instance vẫn quản ly
B. CSDL vẫn còn trong máy nhưng tạm thời bị tách khỏi Instance
C. CSDL xóa hẳn trong máy
Câu lệnh để thực hiện Cấp phát cho tài khoản ‘db_user1’ được quyền xem và cập nhật dữ liệu trên cột ‘hoten, diachi, và Luong của bảng nhân viên’ được viết như thế nào?
A. GRANT SELECT ON NHANVIEN TO db_user1
B. GRANT SELECT, UPDATE ON NHANVIEN TO db_user1
C. GRANT UPDATE ON NHANVIEN( hoten, diachi, luong)
D. GRANT SELECT, UPDATE ON NHANVIEN( hoten, diachi, luong) TO db_user1