Câu hỏi và đáp án môn Hệ quản trị CSDL EHOU

Nếu thấy hữu ích cho mình 5 ⭐ nha

Câu hỏi và đáp án môn Hệ quản trị CSDL EHOU, hỗ trợ học trực tuyến tại Đại học Mở Hà Nội

Hướng dẫn tìm nhanh trên trình duyệt: Ấn Ctrl+F sau đó nhập câu hỏi và nhấn Enter.

Câu hỏi 1: Điều gì làm cho vòng lặp WHILE ngừng lặp?

  • Câu lệnh EXIT luôn luôn được sử dụng để kết thúc vòng lặp.
  • Khi điều kiện được đánh giá là FALSE
  • Khi điều kiện được đánh giá là NULL
  • Khi điều kiện được đánh giá là TRUE

Câu hỏi 2: @V_GRADE nhận giá trị ‘C’ thì @V_PRICE sẽ nhận giá trị thế nào?IF @V_PRICE > 1000 Set @V_GRADE = ‘A’ELSEIF @V_PRICE > 900Set @V_GRADE = ‘B’ELSEIF @V_PRICE > 800 Set @V_GRADE = ‘C’ELSEIF @V_PRICE > 600 Set@V_GRADE = ‘D’ELSE Set@V_GRADE = ‘E’

  • @V_PRICE lớn hơn 1000
  • @V_PRICE lớn hơn 800
  • @V_PRICE trong khoảng 601 và 800 V_PRICE lớn hơn 800
  • @V_PRICE trong khoảng 801 và 900 V_PRICE lớn hơn 1000

Câu hỏi 3: Allen muốn xoá thủ tục dbo.fx_order_cost. Lệnh nào được dùng để xoá thủ tục này?

  • DELETE
  • DROP
  • EDIT
  • REMOVE

Câu hỏi 4: Bạn là nhà quản trị CSDL SQL. Bạn đang phát triển 1 ứng dụng DB cho phòng kế toán công ty của bạn. Ứng dụng này chứa nhiều modules được tích hợp nhau. Các user thuờng gặp phải deadlock bất kỳ lúc nào một người nào đó thực hiện 1 hàm mà nó cần tích hợp từ nhiều module. Làm thế nào đê giảm thiểu các deadlock này?

  • Bạn cần phải bảo đảm là tất cả các transaction chỉnh sửa dữ liệu các bảng không theo cùng thứ tự
  • Bạn cần phải bảo đảm là tất cả các transaction chỉnh sửa dữ liệu các bảng phải theo cùng 1 thứ tự
  • Bạn cần phải bảo đảm là tất cả các transaction chỉnh sửa dữ liệu các bảng phải theo thứ tự ngược nhau
  • Bạn cần phải bảo đảm là tất cả các transaction chỉnh sửa phù hợp với cách thực thi của công cụ query optimizer

Câu hỏi 5: Biến @a nhận giá trị nào khi khối lệnh sau được thực thi?DECLARE @a intBEGINselect @a= @a + 1ENDselect @a 1 0 Tất cả đều sai

  • 0
  • 1
  • NULL
  • Tất cả đều sai

Câu hỏi 6: Các đặc điểm sau là của phương pháp sao lưu nào?-Chỉ sao lưu những thay đổi trên dữ liệu kể từ lần full backup gần nhất-Sử dụng ít tài nguyên hơn -Không ảnh hưởng đến hiệu suất của hệ thống-Sẽ vô nghĩa nếu không có bản sao lưu full backup

  • Differential
  • Full backup
  • Transaction log backup

Câu hỏi 7: Các đặc điểm sau là của phương pháp sao lưu nào?-Sao lưu bản đầy đủ của CSDL-Quá trình được thực hiện mà không cần offline CSDL-Chiếm lượng lớn tài nguyên hệ thống- Ảnh hưởng thời gian đáp ứng các yêu cầu hệ thống

  • Differential
  • Full backup
  • Transaction log backup

Câu hỏi 8: Các hàm nào không thể sử dụng với kiểu dữ liệu xâu?

  • Các đáp án đều sai
  • COUNT()
  • MIN() và MAX()
  • SUM() và AVG()

Câu hỏi 9: Các lệnh nào sau đây bạn sẽ dùng để tạo thủ tục (procedure) mà nhận vào 1 ký tự và hiển thị các tiêu đề bắt đầu với ký tự đó:

  • Create procedure prcDispName @cValue char(1)asDeclare @temp char(2)Select @temp=@cValue+ ’%’ Select * from titles Where title like @temp
  • Create procedure prcDispName @cValue char(1)asSelect * from titles Where title like @cValue%.
  • Create procedure prcDispName@cValue char(1)asSelect * from titles Where title like ’@cValue%’
  • Create procedure prcDispNameasDeclare @temp char(2)Select @temp=’A%’Select * from titles Where title like @temp

Câu hỏi 10: Các phương pháp phân mảnh gồm:

  • Phân mảnh dọc
  • Phân mảnh hỗn hợp
  • Phân mảnh ngang
  • Tất cả các phương án đều đúng

Câu hỏi 11: Các trường hợp nào bắt buộc phải sử dụng trigger?

  • Các ràng buộc mà không thể mô tả khi định nghĩa bảng
  • Khi có sự thay đổi dữ liệu ở 1 bảng và muốn dữ liệu trên một số bảng khác liên quan tự động thay đổi theo
  • Tất cả các phương án đều đúng

Câu hỏi 12: Cảnh báo lỗi “…… .mdf cannot be overwritten. It is being used by database ‘…’” xảy ra khi thực hiện thao tác gì?

  • Khôi phục CSDL
  • Nhập (import) CSDL
  • Sao lưu CSDL
  • Xuất (export) CSDL

Câu hỏi 13: 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?

  • Kết nối mạng trên Server
  • Net-Library
  • ODBC
  • OLE DB

Câu hỏi 14: Câu lệnh CREATE LOGIN <tên đăng nhập> FROM WINDOWS[ WITH [ DEFAULT_DATABASE = <Tên CSDL> ]được dùng để làm gì?

  • Cả hai đáp án đều đúng
  • Cả hai đáp án đều sai
  • Tạo login với quyền đăng nhập SQL Server
  • Tạo login với quyền đăng nhập Window

Câu hỏi 15: Câu lệnh để cấp phát tất cả các quyền cho tất cả các tài khoản được viết như thế nào?

  • GRANT allTO accounts
  • GRANT allTO all accounts
  • GRANT allTO public
  • Không có đáp án nào đúng

Câu hỏi 16: Câu lệnh để hủy bỏ tất cả các quyền trên CSDL đối với tài khoản db_user1

  • REVOKE ALL
  • REVOKE ALLFROM db_user1
  • REVOKE Select, Insert, DeleteFROM db_user
  • REVOKEFROM db_user

Câu hỏi 17: 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?

  • GRANT SELECT, UPDATEON NHANVIEN( hoten, diachi, luong)TO db_user1
  • GRANT SELECT, UPDATEON NHANVIENTO db_user1
  • GRANT SELECTON NHANVIENTO db_user1
  • GRANT UPDATEON NHANVIEN( hoten, diachi, luong)

Câu hỏi 18: Câu lệnh để thực hiện “Hủy bỏ quyền xem và cập nhất dữ liệu trên cột ‘Luong’ của bảng nhân viên đối với tài khoản có tên là ‘db_user1’ ” được viết như thế nào?

  • REVOKE SELECT, UPDATEON NHANVIEN
  • REVOKE SELECT, UPDATEON NHANVIEN( Luong )FROM db_user1
  • REVOKE SELECT, UPDATEON NHANVIENFROM db_user1
  • REVOKE SELECTON NHANVIEN( Luong )FROM db_user1

Câu hỏi 19: Câu lệnh nào được phép dùng trong khối lệnh T-SQL?

  • ALTER TABLE
  • CREATE VIEW
  • DELETE
  • DROP TABLE

Câu hỏi 20: Câu lệnh nào không được phép dùng trong khối lệnh T-SQL?

  • Create
  • Delete
  • Select colum1, column2,…
  • Update

Câu hỏi 21: Câu lệnh sau đây thực hiện gìCREATE LOGIN testWITH PASSWORD = ‘12345’ MUST_CHANGE

  • ✅ Cho phép tạo một tài khoản login mới với tên là “test” và mật khẩu là “12345”. Yêu cầu lần đầu sau khi đăng nhập của tài khoản phải đổi mật khẩu. Tài khoản đăng nhập với quyền xác thực SQL Server

Câu hỏi 22: Câu lệnh sau thực hiện công việc gì?DENY SELECT, INSERT, UPDATE ON TacGiaTO db_user1, db_user2

  • 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
  • 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
  • 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
  • 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

Câu hỏi 23: Câu lệnh sau thực hiện gì?GRANT CREATE TABLE, CREATE VIEWTO db_user

  • Cấp quyền được phép sửa bảng và sửa view đối với tất cả các tài khoản
  • Cấp quyền được phép tạo bảng và tạo view đối với tài khoản db_user
  • Cấp quyền được phép tạo bảng và tạo view đối với tất cả các tài khoản
  • Cấp quyền được phép xóa bảng và xóa view đối với tất cả các tài khoản

Câu hỏi 24: Cấu trúc nào sau đây dùng để thực hiện công việc sau:Tăng 25% lương của nhân viên sinh trước năm 1980Tăng 10% lương của nhân viên sinh từ năm 1980 đến 1990Không tăng lương của nhân viên sinh sau năm 1990

  • . IF… …ELSE
  • IF… …ELSIF…ELSE
  • Không có đáp án đúng
  • WHILE

Câu hỏi 25: Cho bảng NHANVIEN (MaNV, HoTen, NgaySinh, TrinhDo, ChuyenNganh, Nam). Phương pháp tách bảng NHANVIEN thành hai bảng sau tblNV(MaNV, HoTen, NgaySinh) và tblNV2(MaNV, TrinhDo, ChuyenNganh, Nam) là phương pháp phân mảnh gì?

  • ✅ Phân mảnh dọc
  • Phân mảng ngang
  • Phân mảnh hỗn hợp
  • Phân mảnh phân tán

Câu hỏi 26: Cho bảng NV(MaNV, …, MaPB), DA(MaDA, …., MaPB) và PB(MaPB, ….).Viết trigger để khi xóa một PB thì các nhân viên và dự án của phòng ban đó cũng được xóa luôn.

  • CREATE TRIGGER XoaPBON PHONGBANAFTER DeleteASBeginDECLARE @MaPhg nvarchar(9)SELECT @MaPhg = MaPB FROM DELETEDIF EXISTS(SELECT * FROM DEAN WHERE MaPB = @MaPhg)DELETE FROM DEAN WHERE MaPB = @MaPhgEnd
  • CREATE TRIGGER XoaPBON PHONGBANAFTER DeleteASBeginDECLARE @MaPhg nvarchar(9)SELECT @MaPhg = MaPB FROM DELETEDIF EXISTS(SELECT * FROM NHANVIEN WHERE MaPB = @MaPhg)DELETE FROM NHANVIEN WHERE MaPB = @MaPhgEnd
  • CREATE TRIGGER XoaPBON PHONGBANAFTER DeleteASBeginDECLARE @MaPhg nvarchar(9)SELECT @MaPhg = MaPB FROM DELETEDIF EXISTS(SELECT * FROM NHANVIEN WHERE MaPB = @MaPhg)DELETE FROM NHANVIEN WHERE MaPB = @MaPhgIF EXISTS(SELECT * FROM DEAN WHERE MaPB = @MaPhg)DELETE FROM DEAN WHERE MaPB = @MaPhgEnd
  • CREATE TRIGGER XoaPBON PHONGBANAFTER DeleteASBeginIF EXISTS(SELECT * FROM NHANVIEN WHERE MaPB = @MaPhg)DELETE FROM NHANVIEN WHERE MaPB = @MaPhgIF EXISTS(SELECT * FROM DEAN WHERE MaPB = @MaPhg)DELETE FROM DEAN WHERE MaPB = @MaPhgEnd

Câu hỏi 27: Cho bảng PHANCONG(MADA, MANV, SoGio)Đ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

  • CREATE TRIGGER TG_PCON PHANCONGINSTEAD OF DeleteASBEGINdeclare @tg as floatSELECT @tg = SoGio from DELETEDif (@tg<5 or @tg>10)Raiserror(‘Thoi gian chi nhap tu 5 den 10’, 16,1)END
  • CREATE TRIGGER TG_PCON PHANCONGINSTEAD OF insertASBEGINdeclare @tg as floatSELECT @tg = SoGio from INSERTEDif (@tg<5 and @tg>10)Raiserror(‘Thoi gian chi nhap tu 5 den 10’, 16,1)END
  • CREATE TRIGGER TG_PCON PHANCONGINSTEAD OF insertASBEGINdeclare @tg as floatSELECT @tg = SoGio from INSERTEDif (@tg<5 or @tg>10)Raiserror(‘Thoi gian chi nhap tu 5 den 10’, 16,1)END
  • CREATE TRIGGER TG_PCON PHANCONGINSTEAD OF insertASBEGINdeclare @tg as floatSELECT @tg = SoGio from INSERTEDif not (@tg<5 and @tg>10)Raiserror(‘Thoi gian chi nhap tu 5 den 10’, 16,1)END

Câu hỏi 28: Cho bảng tblCTHOADON (sMaHD, sMaSP, iSL, fDG, fThanhTien) và tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)Đoạn Trigger sau để thực hiện yêu cầu gì:CREATE TRIGGER suaCTHDON tblCTHOADONInstead of updateAsIf update(iSL) Begin Declare int @sl, float @dg, nvarchar @soHD Select @sl = iSL, @dg = fDG, @soHD = sMaHD From insterted Update tblHOADON Set TongTien = TongTien + @sl * @dg Where sMaHD = @soHDEnd

  • ✅ Khi cập nhật giá trị tại cột Số lượng (iSL) trong bảng tblCTHOADON thì thành tiền tương ứng của mặt hàng đó trong được tính toán lại tương ứng

Câu hỏi 29: Cho bảng tblCTHOADON (sMaHD, sMaSP, iSL, fDG, fThanhTien). Đoạn Trigger cho phép Khi cập nhật giá trị tại cột Số lượng thì thành tiền tương ứng của mặt hàng đó được tính toán lại tương ứng

  • ✅ CREATE TRIGGER suaCTHDON tblCTHOADONInstead of updateAsIf update(iSL)BeginDeclare int @sl, float @dg, nvarchar(9) @soHD, nvarchar(9) @maSPSelect @sl = iSL, @dg = fDG, @soHD = sMaHD, @maSP = sMaSPFrom instertedUpdate tblCTHOADONSet fThanhTien = @sl * @dgWhere sMaHD = @soHD and sMaSP = @maSPEnd

Câu hỏi 30: Cho bảng tblNHANVIEN(maNV, HoTen, QueQuan, HSL).Câu lệnh để phân quyền được phép xem (lấy) dữ liệu trên bảng tblNHANVIEN cho tài khoản “nguoidung1” là gì?

  • ✅ GRANT SELECTON tblNHANVIENTO nguoidung1

Câu hỏi 31: Cho bảng tblNHANVIEN(maNV, HoTen, QueQuan, HSL).Câu lệnh để phân quyền được phép xem (lấy)và chỉnh sửa dữ liệu trên cột (HoTen, QueQuan) của bảng tblNHANVIEN cho tài khoản “nguoidung1” là gì?

  • ✅ GRANT SELECT, UPDATEON tblNHANVIEN(HoTen, QueQuan)TO nguoidung1

Câu hỏi 32: Cho bảng tblNHANVIEN(sMaNV, sHoten, sGioitinh, fHSL, sQuequan). Đâu là câu truy vấn để cho danh sách tên của các nhân có hệ số lương trên 3.66

  • ✅ Select sHotenFrom tblNHANVIENWhere fHSL>3.66

Câu hỏi 33: Cho bảng tblNHANVIEN(sMaNV, sHoten, sGioitinh, fHSL, sQuequan). Đâu là câu truy vấn để cho danh sách tên và hệ số lương của các nhân có hệ số lương trên 3.33

  • ✅ Select sHoten, fHSLFrom tblNHANVIENWhere fHSL>3.33

Câu hỏi 34: 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 biết tên các sản phẩm đã được mua hàng trong một ngày nào đó

  • ✅ CREATE PROC spTenSP(datetime @d)AsBEGINSelect sTenSPFrom tblSANPHAM as A, tblCTHOADON as B, tblHOADON as CWhere dNgayLap = @d and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHDEND

Câu hỏi 35: 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 hóa đơn nào đó?

  • ✅ CREATE PROC spTenSP(varchar(9) @mhd)AsBEGINSelect sTenSPFrom tblSANPHAM as A, tblCTHOADON as BWhere sMaHD = @mhd and A.sMaSP = B.sMaSPEND

Câu hỏi 36: 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 đó?

  • ✅ CREATE PROC spTenSP(int @m, int @y)AsBEGINSelect sTenSPFrom tblSANPHAM as A, tblCTHOADON as B, tblHOADON as CWhere month(dNgayLap) = @m and year(dNgayLap) = @y and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHDEND

Câu hỏi 37: 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 KHÔNG được bán trong một năm nào đó?

  • ✅ CREATE PROC spTenSP(int @y)AsBEGINSelect sTenSPFrom tblSANPHAMWhere sMaSP not in (Select sMaSP from tblCTHOADON as A, tblHOADON as BWhere year(dNgayLap) = @y and A.sMaHD = B.sMaHD)END

Câu hỏi 38: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu) và tblCTHOADON (sMaHD, sMaSP, iSLM), tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV) Đoạn thủ tục sau thực hiện yêu cầu xử lý gì?CREATE PROC spTenSP(datetime @d)AsBEGIN Select sTenSP From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C Where dNgayLap = @d and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHDEND

  • ✅ Cho danh sách tên các sản phẩm đã được khách hàng mua hàng trong một ngày nào đó, với ngày là tham số truyền vào

Câu hỏi 39: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu) và tblCTHOADON (sMaHD, sMaSP, iSLM). Đâu là thủ tục để cho danh sách tên các sản phẩm đã được mua hàng theo mã hóa đơn nào đó?

  • ✅ CREATE PROC spTenSP(nvarchar(9) @mhd)AsBEGINSelect sTenSPFrom tblSANPHAM as A, tblCTHOADON as BWhere sMaHD = @mhd and A.sMaSP = B.sMaSPEND

Câu hỏi 40: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu) và tblCTHOADON (sMaHD, sMaSP, iSLM). Đoạn thủ tục sau thực hiện yêu cầu xử lý gì?CREATE PROC spTenSP(nvarchar @mhd)AsBEGIN Select sTenSP From tblSANPHAM as A, tblCTHOADON as B Where sMaHD = @mhd and A.sMaSP = B.sMaSPEND

  • ✅ Cho biết tên sản phẩm đã được mua hàng của một hóa đơn nào đó với mã hóa đơn là tham số truyền vào

Câu hỏi 41: 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á trên 50000 và có xuất sứ ở Pháp

  • ✅ Select sTenSPFrom tblSANPHAMWhere fDonGia > 50000 and sXuatSu = N’Pháp’

Câu hỏi 42: 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

  • ✅ Select sTenSPFrom tblSANPHAMWhere fDongia between 50000 and 100000

Câu hỏi 43: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đâu là câu truy vấn để tính tổng số lượng sản phẩm của từng nước theo xuất sứ

  • ✅ Select sXuatSu, sum(iSoluong)From tblSANPHAMGroup by sXuatSu

Câu hỏi 44: 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ó

  • ✅ Select sum(iSoluong*fDonGia)From tblSANPHAM

Câu hỏi 45: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đâu là thủ tục để cho tên các sản phẩm có đơn giá trong một khoảng @a và @b nào đó?

  • ✅ CREATE PROC spTenSP(float @a, float @b)AsBEGINSelect sTenSPFrom tblSANPHAMWhere fDonGia between @a and @bEND

Câu hỏi 46: Cho bảng tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongia, sXuatSu). Đâu là thủ tục để cho 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

  • ✅ CREATE PROC spTenSP(nvarchar @xs)AsBEGINSelect sTenSPFrom tblSANPHAMWhere sXuatSu = @xsEND

Câu hỏi 47: 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(float @a, float @b)AsBEGIN Select sTenSP From tblSANPHAM Where fDonGia between @a and @bEND

  • ✅ Cho danh sách tên sản phẩm có đơn giá trong khoảng từ @a đến @b với @a và @b là tham số truyền vào

Câu hỏi 48: 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(float @a, nvarchar @xs)AsBEGIN Select sTenSP From tblSANPHAM Where fDonGia > @a and sXuatSu = @xsEND

  • ✅ Cho danh sách tên sản phẩm có đơn giá lớn hơn một số @a và xuất sứ từ một nước @xs nào đó, với số @a và xuất sứ @xs là tham số truyền vào
  • Cho danh sách tên sản phẩm có đơn giá lớn hơn một số @a, với số @a là tham số truyền vào
  • Cho danh sách tên sản phẩm có xuất sứ @xs nào đó, với @xs là tham số truyền vào
  • Cho danh sách thông tin đầy đủ các sản phẩm có đơn giá lớn hơn một số @a và xuất sứ @xs từ một nước nào đó, với số @a và xuất sứ @xs là tham số truyền vào

Câu hỏi 49: 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)AsBEGIN Select sTenSP From tblSANPHAM Where sXuatSu = @xsEND

  • ✅ 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
  • Cho danh sách tên các sản phẩm có xuất xứ nước ngoài
  • Cho danh sách thông tin đầy đủ các sản phẩm
  • 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

Câu hỏi 50: Cho các bảng PHONGBAN ( MAPB, TENDV , MaTP, NgayBD, SoNV), NHANVIEN ( MANV, HOTen, NS, GT, HSL, DC, MAPB, NgayVL), DUAN ( MADA, TENDA, DIADIEM, NgBD, MAPB)Viết trigger khi thay đổi mã cho một phòng thì các nhân viên và dự án thuộc phòng ban đó cũng phải thay đổi theo

  • CREATE TRIGGER UpdateMaPhongON PHONGBANFOR UPDATEASBEGINIF UPDATE( MaPhong )BEGINDECLARE @MaPhgCu nvarchar(9), @MaPhgMoi nvarchar(9)SELECT @MaPhgCu = MaPB FROM DELETEDSELECT @MaPhgMoi = MaPB FROM INSERTEDIf ( EXISTS (select MaPB from DUAN Where MaPB = @MaPhgCu) )UPDATE DUAN set MaPB = @MaPhgMoiWHERE MaPB = @MaPhgCuENDEND
  • CREATE TRIGGER UpdateMaPhongON PHONGBANFOR UPDATEASBEGINIF UPDATE( MaPhong )BEGINDECLARE @MaPhgCu nvarchar(9), @MaPhgMoi nvarchar(9)SELECT @MaPhgCu = MaPB FROM DELETEDSELECT @MaPhgMoi = MaPB FROM INSERTEDIf ( EXISTS (select MaPB from NHANVIEN Where MaPB= @MaPhgCu) )UPDATE NHANVIEN SET MaPB = @MaPhgMoiWHERE MaPB = @MaPhgCuENDEND
  • CREATE TRIGGER UpdateMaPhongON PHONGBANFOR UPDATEASBEGINIF UPDATE( MaPhong )BEGINDECLARE @MaPhgCu nvarchar(9), @MaPhgMoi nvarchar(9)SELECT @MaPhgCu = MaPB FROM DELETEDSELECT @MaPhgMoi = MaPB FROM INSERTEDIf ( EXISTS (select MaPB from NHANVIEN Where MaPB= @MaPhgCu) )UPDATE NHANVIEN SET MaPB = @MaPhgMoiWHERE MaPB = @MaPhgCuIf ( EXISTS (select MaPB from DUAN Where MaPB = @MaPhgCu) )UPDATE DUAN set MaPB = @MaPhgMoiWHERE MaPB = @MaPhgCuENDEND
  • Tất cả các phương án đều đúng

Câu hỏi 51: Cho các bảngLOP( 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.

  • CREATE TRIGGER UpdateMaLopON LOPFOR UPDATEASBEGINIF UPDATE( MaLop)BEGINDECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9)SELECT @MaLopCu = MaLop FROM DELETEDSELECT @MaLopMoi = MaLop FROM INSERTEDENDEND
  • CREATE TRIGGER UpdateMaLopON LOPFOR UPDATEASBEGINIF UPDATE( MaLop)BEGINDECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9)SELECT @MaLopCu = MaLop FROM DELETEDSELECT @MaLopMoi = MaLop FROM INSERTEDIf ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) )UPDATE SINHVIEN SET MaLop = @MaLopMoiWHERE MaLop = @MaLopCuENDEND
  • CREATE TRIGGER UpdateMaLopON LOPFOR UPDATEASBEGINIF UPDATE( MaLop)BEGINSELECT @MaLopCu = MaLop FROM DELETEDSELECT @MaLopMoi = MaLop FROM INSERTEDIf ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) )UPDATE SINHVIEN SET MaLop = @MaLopMoiWHERE MaLop = @MaLopCuENDEND
  • CREATE TRIGGER UpdateMaLopON SINHVIENFOR UPDATEASBEGINIF UPDATE( MaLop)BEGINDECLARE @MaLopCu nvarchar(9), @MaLopMoi nvarchar(9)SELECT @MaLopCu = MaLop FROM DELETEDSELECT @MaLopMoi = MaLop FROM INSERTEDIf ( EXISTS (select MaLop from SINHVIEN Where MaLop= @MaLopCu) )UPDATE SINHVIEN SET MaLop = @MaLopMoiWHERE MaLop = @MaLopCuENDEND

Câu hỏi 52: Cho CSDL “QLGV” với bảng tblNV phân mảnh dọc theo nguyên tắc sau:-Server1 gồm các thông tin: MaNV, HoTen, GioiTinh-Server2 gồm các thông tin: MaNV, DiaChi, DienThoai, EmailCâu lệnh còn thiếu để tạo view đầy đủ danh sách các GV lấy từ cả 2 server (view được viết trên Server2)Create View DSNVasbegin Select tblNV.MaNV, Hoten, GioiTinh, DiaChi, DienThoai, Email From tblNV, Server1.QLGV.dbo.tblNVWhere …..end

  • MaNV = tblNV.MaNV
  • tblNV.MaNV = Server1. tblNV.MaNV
  • tblNV.MaNV = Server1.QLGV.dbo.tblNV.MaNV
  • tblNV.MaNV = QLGV.dbo.tblNV.MaNV

Câu hỏi 53: Cho CSDL “QLGV” với bảng tblNV phân mảnh dọc theo nguyên tắc sau:-Server1 gồm các thông tin: MaNV, HoTen, GioiTinh-Server2 gồm các thông tin: MaNV, DiaChi, DienThoai, EmailĐoạn code thiếu để chèn thêm một nhân viên mới vào bảng (thủ tục được viết trên Server2)Create Proc spInsertNhanVien (@ma varchar(10), @HTnVarchar(20), @GT as nvarchar(3), @DC as nvarchar(20), @DT as nvarchar(20), @Email as nvarchar(20))@diachi nvarchar(30), @dienthoai varchar(11))asBegin Insert Into tblNV Values(@ma, @DC, @DT, @Email)…..print N’Thêm thành công’End

  • Insert Into Server1.QLGV.dbo.tblNV Values(@ma,@DC, @DT, @Email)
  • Insert Into Server1.QLGV.dbo.tblNV Values(@ma,@HT, @GT)
  • Insert Into Server2.QLGV.dbo.tblNV Values(@ma,@HT, @GT)
  • Insert Into tblNV Values(@ma,@HT, @GT)

Câu hỏi 54: Cho CSDL “QLNV” với bảng tblNhanVien(MaNV, TenNV, GioiTinh, DiaChi) phân mảnh ngang theo nguyên tắc sau:-Server1 gồm các nhân viên Nữ-Server2 gồm các nhân viên NamCâu lệnh để có được bảng đầy đủ danh sách các nhân viên (cả nam và nữ) từ Server 2 là gì?

  • Select MaNV, TenNV, GioiTinh, DiaChifromServer1.QLNV.dbo.tblNhanvienUnionSelect MaNV, TenNV, GioiTinh, DiaChiFrom tblNhanvien
  • Select MaNV, TenNV, GioiTinh, DiaChifromServer1.tblNhanvien
  • Select MaNV, TenNV, GioiTinh, DiaChifromServer1.tblNhanvienUnionSelect MaNV, TenNV, GioiTinh, DiaChiFrom tblNhanvien
  • Select MaNV, TenNV, GioiTinh, DiaChifromtblNhanvienUnionSelect MaNV, TenNV, GioiTinh, DiaChiFrom Server2.QLNV.dbo.tblNhanvien

Câu hỏi 55: Cho CSDL “QLNV” với bảng tblNhanVien(MaNV, TenNV, GioiTinh, DiaChi) phân mảnh ngang theo nguyên tắc sau:-Server1 gồm các nhân viên Nữ-Server2 gồm các nhân viên NamĐoạn code để chèn thêm một nhân viên mới vào bảng (thủ tục được viết trên Server2)

  • Create Proc spInsertNhanvien (@ma varchar(10), @ten nVarchar(20), @gioitinh nvarchar(3), @diachi varchar(30))asBeginIf @gioitinh = ‘Nam’Insert Into tblNhanvien Values(@ma,@ten,@gioitinh,@diachi)ElseInsert Into Server1.QLNNV.dbo.tblNhanvienValues(@ma,@ten,@gioitinh,@diachi)print N’Thêm thành công’End
  • Create Proc spInsertNhanvien (@ma varchar(10), @ten nVarchar(20), @gioitinh nvarchar(3), @diachi varchar(30))asBeginIf @gioitinh = ‘Nam’Insert Into tblNhanvien Values(@ma,@ten,@gioitinh,@diachi)ElseInsert Into Server1.tblNhanvienValues(@ma,@ten,@gioitinh,@diachi)print N’Thêm thành công’End
  • Create Proc spInsertNhanvien (@ma varchar(10), @ten nVarchar(20), @gioitinh nvarchar(3), @diachi varchar(30))asBeginIf @gioitinh = ‘Nam’Insert Into tblNhanvien Values(@ma,@ten,@gioitinh,@diachi)ElseInsert Into tblNhanvienValues(@ma,@ten,@gioitinh,@diachi)print N’Thêm thành công’End
  • Không có đáp án đúng

Câu hỏi 56: Cho CSDL “QLNV” với bảng tblPhongBan phân mảnh dọc theo nguyên tắc sau:-Server1 gồm các thông tin: MaPhong, TenPhong-Server2 gồm các thông tin: MaPhong, DiaDiem, DienThoaiCâu lệnh để có được bảng đầy đủ các thông tin: MaPhong, TenPhong, DiaDiem, DienThoai từ Server 2 là gì?

  • Select a.MaPhong, TenPhong, DiaDiem, DienThoaiFrom QLNV.dbo.tblPhongban a, tblPhongBan bWhere a.MaPhong = b.MaPhong
  • Select a.MaPhong, TenPhong, DiaDiem, DienThoaiFrom Server1.QLNV.dbo.tblPhongban a, tblPhongBan b
  • Select a.MaPhong, TenPhong, DiaDiem, DienThoaiFrom Server1.QLNV.dbo.tblPhongban a, tblPhongBan bWhere a.MaPhong = b.MaPhong
  • Select MaPhong, TenPhong, DiaDiem, DienThoaiFrom Server1.QLNV.dbo.tblPhongban a, tblPhongBan bWhere a.MaPhong = b.MaPhong

Câu hỏi 57: Cho CSDL “QLNV” với bảng tblPhongBan phân mảnh dọc theo nguyên tắc sau:-Server1 gồm các thông tin: MaPhong, TenPhong-Server2 gồm các thông tin: MaPhong, DiaDiem, DienThoaiĐoạn code để chèn thêm một phòng ban mới vào bảng (thủ tục được viết trên Server2)

  • Create Proc spInsertPhongban (@ma varchar(10), @ten nVarchar(20), @diachi nvarchar(30), @dienthoai varchar(11))asBeginInsert Into tblPhongBan Values(@ma, @diachi, @đienthoai)Insert Into Server1.QLNV.dbo.tblPhongBan Values(@ma,@ten)print N’Thêm thành công’End
  • Create Proc spInsertPhongban (@ma varchar(10), @ten nVarchar(20), @diachi nvarchar(30), @dienthoai varchar(11))asBeginInsert Into Server1.QLNV.dbo.tblPhongBan Values(@ma, @diachi, @đienthoai)Insert Into tblPhongBan Values(@ma,@ten)print N’Thêm thành công’End
  • Create Proc spInsertPhongban (@ma varchar(10), @ten nVarchar(20), @diachi nvarchar(30), @dienthoai varchar(11))asBeginInsert Into tblPhongBan Values(@ma, @ten, @diachi, @đienthoai)print N’Thêm thành công’End
  • Không có đáp án nào đúng

Câu hỏi 58: Cho CSDL “QuanLyBH” được cài đặt tại ServerAo và ServerThat như sau:*Tại ServerAo có chứa bảng tblNV(MaNV, HoTen, NgaySinh, TrinhDo, ChuyenNganh, Nam) *Tại ServerThat có bảng tblNV(MaNV, HoTen, NgaySinh, TrinhDo, ChuyenNganh, Nam) Tại ServerThat câu lệnh truy vấn để cho danh sách tất cả thông tin gồm (MaNV, HoTen, TrinhDo) được viết như thế nào?

  • ✅ Select MaNV, HoTen, TrinhDoFrom tblNVUnionSelect MaNV, HoTen, TrinhDoFrom ServerAo.QuanLyBH.dbo.tblNV

Câu hỏi 59: Cho CSDL “QuanLyBH” được cài đặt tại ServerAo và ServerThat như sau:*Tại ServerAo có chứa bảng tblNV2(MaNV, TrinhDo, ChuyenNganh, Nam) *Tại ServerThat có bảng tblNV(MaNV, HoTen, NgaySinh)Tại ServerThat câu lệnh truy vấn để cho danh sách đầy đủ thông tin gồm MaNV, HoTen, TrinhDo được viết như thế nào

  • ✅ Seclect tblNV.MaNV, HoTen, TrinhDoFrom tblNV, ServerAo.QuanLyBH.dbo.tblNV2Where tblNV.MaNV = ServerAo.QuanLyBH.dbo.tblNV2.MaNV

Câu hỏi 60: Cho CSDL “QuanLyKH” cài đặt trên máy “Server2” có chứa bảng “KhachHang”. Tại máy “Server1” muốn lấy các thông tin trong bảng “KhachHang” thì câu lệnh thực hiện là:

  • SELECT *FROM Server2. KhachHang
  • SELECT *FROM Server2.QuanlyKH.dbo.KhachHang
  • SELECT *FROM KhachHang
  • SELECT *FROM QuanlyKH.dbo.KhachHang

Câu hỏi 61: 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

  • CREATE TRIGGER CHECK_NGAY_THAM_GIA_DAON PHANCONGAFTER UPDATE, INSERTASIF UPDATE(NgayThamGia) –Kiểm tra việc cập nhật trên cộtBEGINdeclare @NgTG datetime, @NgBD datetimeSET @NgTG = (SELECT NgLamDA FROM INSERTED)SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTEDENDEND
  • CREATE TRIGGER CHECK_NGAY_THAM_GIA_DAON PHANCONGAFTER UPDATE, INSERTASIF UPDATE(NgayThamGia) –Kiểm tra việc cập nhật trên cộtBEGINdeclare @NgTG datetime, @NgBD datetimeSET @NgTG = (SELECT NgLamDA FROM INSERTED)SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTEDWHERE DEAN.MaDA = INSERTED.MaDA)IF ( @NgTG < @NgBD )BEGINraiserror(N’Ngày Tham gia phải sau ngày Bắt đầu’,16,1)ENDEND
  • CREATE TRIGGER CHECK_NGAY_THAM_GIA_DAON PHANCONGAFTER UPDATE, INSERTASIF UPDATE(NgayThamGia) –Kiểm tra việc cập nhật trên cộtBEGINSET @NgTG = (SELECT NgLamDA FROM INSERTED)SET @NgBD = (SELECT NgayBD FROM DEAN, INSERTEDWHERE DEAN.MaDA = INSERTED.MaDA)IF ( @NgTG < @NgBD )BEGINraiserror(N’Ngày Tham gia phải sau ngày Bắt đầu’,16,1)ENDEND
  • Không có phương án nào đúng

Câu hỏi 62: Cho CSDL gồm các bảng:tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongiaban, sNhaSX, TSLuongBan) tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)tblCTHOADON (sMaHD, sMaSP, iSLM) Để cho phép mỗi khi Khách hàng mua hàng với số lượng mua iSLM nào đó thì tổng số lượng hàng đã bán TSLuongBan của sản phẩm được cập nhật tự động thì tạo đối tượng gì trong CSDL tương ứng?

  • ✅ Trigger
  • Proc
  • Table
  • View

Câu hỏi 63: Cho CSDL gồm các bảng:tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongiaban, sNhaSX, TSLuongBan) tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)tblCTHOADON (sMaHD, sMaSP, iSLM) Đoạn mã xây dựng Trigger để khi cập nhật mã Sản phẩm trong bảng SẢN PHẨM thì các mã của sản phẩm đó tương ứng mà khách đã mua được cập nhật theo cho phù hợp?

  • ✅ Create trigger capnhat_MaSPON tblSanPhamAfter UpdateBeginDeclare @maSPM nvarchar(10), @maSPC nvarchar(10)Select @maSPM From insertedSelect @maSPC From deletedUpdate tblCTHOADONSet sMaSP = @maSPMWhere sMaSP = @maSPCEnd

Câu hỏi 64: Cho CSDL quản lý bán hàng gồm hai bảng:tblKHACHHANG(sSdtKH, sTenKH, SoHoaDon) tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)Đoạ Trigger sau đây thực hiện gì?CREATE TRIGGER ThemHoaDonON tblHOADONInstead of InsertBegin Declare @soDT nvarchar(10) Select @soDT = sSDTKH From tbl inserted Update tblKHACHHANG Set SoLanMua = SoLanMua + 1end

  • ✅ 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 tương ứng được lập cho hóa đơn đó được tăng lên tương ứng một đơn vị

Câu hỏi 65: 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ị

  • ✅ CREATE TRIGGER ThemHoaDonON tblHOADONInstead of InsertBeginDeclare @soDT nvarchar(10)Select @soDT = sSDTKHFrom insertedUpdate tblKHACHHANGSet SoLanMua = SoLanMua + 1Where sSdtKH = @soDTend

Câu hỏi 66: Cho CSDL quản lý bán sản phẩm gồm các bảng: tblNHANVIEN(sMaNV, sHoten, sGioitinh, fHSL, sQuequan) tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongiaban, sNhaSX) tblKHACHHANG(sSdtKH, sTenKH) tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)tblCTHOADON (sMaHD, sMaSP, iSLM)Đâu là thủ tục để cho danh sách tên các Nhân viên đã KHÔNG tham gia bán hàng trong một ngày nào đó

  • ✅ CREATE PROC spTenNV(datetime @d)AsBEGINSelect sHotenFrom tblNHANVIENWhere sMaNV not in (Select sMaNV from tblHOADONWhere dNgayLap = @d)END

Câu hỏi 67: Cho CSDL quản lý bán sản phẩm gồm các bảng: tblNHANVIEN(sMaNV, sHoten, sGioitinh, fHSL, sQuequan) tblSANPHAM(sMaSP, sTenSP, iSoluong, fDongiaban, sNhaSX) tblKHACHHANG(sSdtKH, sTenKH) tblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV)tblCTHOADON (sMaHD, sMaSP, iSLM)Đâu là thủ tục để cho danh sách tên các Nhân viên đã tham gia bán hàng trong một ngày nào đó

  • ✅ CREATE PROC spTenNV(datetime @d)AsBEGINSelect sHotenFrom tblNHANVIENWhere sMaNV in (Select sMaNV from tblHOADONWhere dNgayLap = @d)EN

Câu hỏi 68: Cho CSDL Quản lý nhân sự gồm các bảng:NHANVIEN(MaNV, HoTen, HSL, PC, GioiTinh, MaPB)PHONGBAN(MaPB, TenPB, DiaDiem)Để tài khoản db_user1 được quyền lựa chọn – cập nhật trên thuộc tính HoTen, Hệ số lương của bảng NHANVIEN và trên thuộc tính tên phòng ban của bảng PHONGBAN thì câu lệnh phân quyền đầy đủ là gì?

  • REVOKE SELECT, UPDATEON NHANVIEN( HoTen, HSL )FROM db_user1
  • REVOKE SELECT, UPDATEON NHANVIEN( HoTen, HSL )FROM db_user1REVOKE SELECT, UPDATEON PHONGBAN( TenPB )FROM db_user1
  • REVOKE SELECT, UPDATEON NHANVIENFROM db_user1REVOKE SELECT, UPDATEON PHONGBANFROM db_user1
  • REVOKE SELECT, UPDATEON PHONGBANFROM db_user1

Câu hỏi 69: Cho CSDL Quản lý nhân sự gồm các bảng:NHANVIEN(MaNV, HoTen, HSL, PC, GioiTinh, MaPB)PHONGBAN(MaPB, TenPB, DiaDiem)Tài khoản “db_user1” được thực hiện câu lệnh nào sau khi đoạn mã sau được thực hiện:REVOKE SELECT, UPDATEON NHANVIEN( HoTen, HSL )FROM db_user1REVOKE SELECT, UPDATEON PHONGBAN( TenPB )FROM db_user1

  • Delete from NHANVIENWhere GioiTinh = N’Giới tính”
  • Select HoTen, HSL, TenPB, GioiTinhFrom NHANVIEN, PHONGBANWhere NHANVIEN.MaPB = PHONGBAN.MaPB
  • Select HoTen, HSL, TenPBFrom NHANVIEN, PHONGBANWhere NHANVIEN.MaPB = PHONGBAN.MaPBUpdate NHANVIENSet HSL = HSL + 1Where GioiTinh = N’Nữ”
  • Select HoTen, HSL, TenPBFrom NHANVIEN, PHONGBANWhere NHANVIEN.MaPB = PHONGBAN.MaPBUpdate NHANVIENSet PC = PC + 1Where GioiTinh = N’Nữ”

Câu hỏi 70: 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 fHSL>3.33

  • ✅

Câu hỏi 71: 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’

  • ✅

Câu hỏi 73: 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’Nữ’

  • ✅

Câu hỏi 74: 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 tblNHANVIENWhere fHSL>3.33

  • ✅

Câu hỏi 76: 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 tblNHANVIENWhere fHSL<3.33

  • ✅

Câu hỏi 78: 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 tblNHANVIENWhere sGioitinh = N’Nam’

Câu hỏi 79: 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 tblNHANVIENWhere sGioitinh = N’Nữ’

  • ✅

Câu hỏi 81: 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’

  • ✅

Câu hỏi 82: 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 between 50,000 and 70,000

  • ✅

Câu hỏi 83: 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 tblSANPHAMWhere fDonGia > 50000 and sXuatSu = N’Pháp’

  • ✅

Câu hỏi 84: 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 tblSANPHAMWhere fDonGia between 50,000 and 70,000

  • ✅

Câu hỏi 85: Cho CSDL quản lý sản phẩm với hai bảng blCTHOADON (sMaHD, sMaSP, iSLM) và tblSANPHAM(sMaSP, sTenSP, iSLBan, fDongia, sXuatSu).Đâu là câu lệnh truy vấn để tính tổng số tiền hàng đã bán của từng hóa đơn

  • ✅ Select sMaHD, sum(iSLM*fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSPGroup by sMaHD
  • Select sMaHD, sum(iSLM *fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSP
  • Select sMaHD, sum(iSLM *fDonGia)From tblCTHOADONGroup by sMaHD
  • Select sum(iSLM*fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSP

Câu hỏi 86: Cho CSDL quản lý sản phẩm với hai bảng blCTHOADON (sMaHD, sMaSP, iSLM) và tblSANPHAM(sMaSP, sTenSP, iSLBan, fDongia, sXuatSu).Đâu là câu lệnh truy vấn để tính tổng số tiền hàng đã bán của từng sản phẩm theo tên Sản phẩm.

  • ✅ Select sTenSP, sum(iSLM *fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSPGroup by sTenSP
  • Select sum(iSLM *fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSPGroup by sMaHD
  • Select sTenSP, sum(iSLM *fDonGia)From tblCTHOADON, tblSANPHAMWhere tblCTHOADON.sMaSP=tblSANPHAM.sMaSP
  • Select sum(iSLM *fDonGia)From tblCTHOADON, tblSANPHAMGroup by sTenSP

Câu hỏi 87: Cho đoạn lệnh: declare @IX int =100 while (@IX <=110) begin print @IX if @IX=105 break set @IX = @IX +1 ENDMấy dòng dữ liệu được in ra

  • 0
  • 1
  • 5
  • 6

Câu hỏi 88: Cho đoạn lệnh:DECLARE@V1 intBEGINSELECT COUNT(*) FROM nhanvienENDBEGINset @V1= @@ROWCountENDGiá trị @V1 sẽ nhận là?

  • 0
  • 1
  • NULL
  • Tùy thuộc vào số lượng bản ghi của bảng Nhanvien

Câu hỏi 89: Cho đoạn mã sau. DECLARE@V_BONUS INT,BEGINSELECT @V_SALARY = luong FROM nhanvienWHERE manv = 1set @V_BONUS = @V_SALARY * 0.1;ENDselect @V_BONUSNguyên nhân đoạn mã gây ra lỗi:

  • Biến V_BONUS chưa khởi tạo.
  • Câu lệnh SELECT có bí danh
  • Chưa khai báo biến @V_SALARY
  • Thiếu phần EXCEPTION

Câu hỏi 90: Cho đoạn mã tạo trigger:CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF INSERTAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from INSERTEDif ( @gt not in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)ENDCho biết ý nghĩa của đoạn mã

  • Tạo trigger kiểm tra giới tính nhập vào cho bảng NHANVIEN
  • Tạo trigger kiểm tra giới tính nhập vào cho bảng NHANVIEN chỉ nhập từ Nam hoặc Nữ, nếu nhập sai đươc ra thông báo “Bạn nhập sai Giới tính”
  • Tạo trigger kiểm tra giới tính nhập vào cho bảng NHANVIEN không được nhập giá trị “Nam” hoặc”Nữ”
  • Tất cả các phương án đều đúng

Câu hỏi 91: Cho đoạn mã tạo trigger:CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF INSERTAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from INSERTEDif ( @gt not in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)ENDCho biết ý nghĩa của dòng code “select @gt = GT from INSERTED”

  • Lấy giá trị đang được nhập tạm thời của thuộc tính Giới tính trong bảng DELETED khi thêm với bảng NHÂN VIÊN
  • Lấy giá trị đang được nhập tạm thời của thuộc tính Giới tính trong bảng DELETED khi xóa với bảng NHÂN VIÊN
  • Lấy giá trị đang được nhập tạm thời của thuộc tính Giới tính trong bảng INSERTED khi sửa với bảng NHÂN VIÊN
  • Lấy giá trị đang được nhập tạm thời của thuộc tính Giới tính trong bảng INSERTED khi thêm với bảng NHÂN VIÊN

Câu hỏi 92: Cho hai bảngtblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV, TongTien)tblCTHOADON (sMaHD, sMaSP, iSL, fDG) Để cho phép mỗi khi thêm một dòng mới vào bảng tblCTHOADON thì tổng tiền của HOADON được cập nhật theo thì viết trigger với lựa chọn biến cố nào?

  • ✅ Insert
  • Delete
  • Select
  • Update

Câu hỏi 93: Cho hai bảngtblHOADON(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

  • ✅ CREATE TRIGGER themCTHDON tblCTHOADONInstead of InsertAsBeginDeclare int @sl, float @dg, nvarchar(9) @soHDSelect @sl = iSL, @dg = fDG, @soHD = sMaHDFrom instertedUpdate tblHOADONSet TongTien = TongTien + @sl * @dgWhere sMaHD = @soHDEnd
  • CREATE TRIGGER themCTHDON tblCTHOADONInstead of InsertAsBeginUpdate tblHOADONSet TongTien = TongTien + iSL * fDGEnd
  • CREATE TRIGGER themCTHDON tblCTHOADONInstead of InsertAsBeginUpdate tblHOADONSet TongTien = TongTien + iSL * fDGWhere sMaHD = @soHDEnd
  • CREATE TRIGGER themCTHDON tblHOADONInstead of InsertAsBeginDeclare int @sl, float @dg, nvarchar(9) @soHDSelect @sl = iSL, @dg = fDG, @soHD = sMaHDFrom instertedUpdate tblHOADONSet TongTien = TongTien + @sl * @dgWhere sMaHD = @soHDEnd

Câu hỏi 94: Cho hai bảngtblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV, TongTien)tblCTHOADON (sMaHD, sMaSP, iSL, fDG) Đoạn trigger sau làm nhiệm vụ gì?CREATE TRIGGER themCTHDON tblCTHOADONInstead of InsertAsBegin Declare int @sl, float @dg, nvarchar @soHD Select @sl = iSL, @dg = fDG, @soHD = sMaHD From insterted Update tblHOADON Set TongTien = TongTien + @sl * @dg Where sMaHD = @soHDEnd

  • ✅ Mỗi khi thêm một dòng mới vào bảng tblCTHOADON thì tổng tiền của HOADON với mã hóa đơn tương ứng được tăng theo tuỳ theo số lượng và đơn giá được nhập vào
  • Mỗi khi lấy thông tin từ bảng tblCTHOADON thì tự động tính toán Tổng Tiền cho số hóa đơn tuonwg ứng
  • Mỗi khi sửa thông tin của một dòng trong tblCTHOADON thì tổng tiền tương ứng của hóa đơn đó được chỉnh sửa tương ứng
  • Mỗi khi xoá một dòng trong bảng tblCTHOADON thì tổng tiền của hóa đơn được giảm tương ứng cho hóa đơn với mã được xoá

Câu hỏi 95: Cho hai bảngtblHOADON(dNgaylap, sMaHD, sSdtKH, sMaNV, TongTien)tblCTHOADON (sMaHD, sMaSP, iSLM) Để cho phép mỗi khi xoá một dòng mới trong bảng tblCTHOADON thì tổng tiền của HOADON được cập nhật theo thì viết trigger với lựa chọn biến cố nào

  • ✅ Delete
  • Insert
  • Select
  • Update

Câu hỏi 96: Cho máy thật có địa chỉ là 192.168.10.25. Để máy ảo kết nối phân tán được đến máy chủ thì địa chỉ máy áo phải là địa chỉ nào sau đây?

  • ✅ 192.168.10.40
  • 192.168.11.25
  • 192.169.10.25
  • 195.168.10.25

Câu hỏi 97: Cho T-SQL block sau, dòng nào gây ra lỗi?1. DECLARE2. @V_DEPTNO INT3. BEGIN4. SET @V_DEPTNO = 205. SELECT ENAME, SALARYFROM EMP WHERE DEPTNO = @V_DEPTNO6. END

  • Dòng 2
  • Dòng 4
  • Dòng 5
  • Không có dòng nào gây lỗi.

Câu hỏi 98: Cho T-SQL block sau:DECLARE @X INT = 100WHILE (@x<= 108 )IF @x = 102break ELSEBEGIN Insert into NHANVIEN(manv) values (@X) SET @X=@X+1ENDBao nhiêu dòng được thêm vào bảng Nhanvien khi thực thi block?

  • 0
  • 2
  • 7
  • 9

Câu hỏi 99: Có mấy kiểu xác thực trong SQL Server

  • 2
  • 3
  • 4
  • 5

Câu hỏi 100: Có mấy kỹ thuật sao lưu?

  • 2
  • 3
  • 4
  • 5

Câu hỏi 101: Có mấy loại trigger?

  • 2
  • 3
  • 4
  • 5

Câu hỏi 102: Có mấy phương pháp phân tán CSDL?

  • 2
  • 3
  • 4
  • 5

Câu hỏi 103: Có mấy phương pháp thực hiện phân mảnh dữ liệu

  • 2
  • 3
  • 4
  • 5

Câu hỏi 104: Cơ sở dữ liệu hệ thống Msdb dùng để?

  • Hoạch định các báo động và công việc cần làm (schedule alerts and jobs)
  • Lưu trữ các system objects
  • Lưu trữ các table và stored proceduce trong quá trình làm việc
  • Lưu trữ các thông tin cấp hệ thống

Câu hỏi 105: Có thể đặt mấy cột trong bảng làm khóa chính?

  • Chỉ trên cột ID
  • Trên 1 cột bất kỳ
  • Trên 2 cột bất kỳ
  • Trên nhiều cột

Câu hỏi 106: Cú pháp để truy xuất đến một bảng của CSDL khác năm khác Server là:

  • [DatabaseName][.owner][.tableName] [.ServerName]
  • [ServerName][.DatabaseName][.owner][.tableName]
  • [ServerName][.owner][.tableName]
  • [ServerName][.tableName]

Câu hỏi 107: Cú pháp để truy xuất đến một bảng của CSDL khác trong cùng Server là:

  • [database][.owner][.tableName]
  • [database][.tableName]
  • [tableName][.database]
  • [tableName][.database][.owner]

Câu hỏi 108: Đặc điểm của trigger là gì?

  • 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
  • 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
  • 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
  • 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âu hỏi 109: Để báo cáo số lượng bán được theo từng năm của 1 đầu sách (title) nào đó, người ta đã tạo 1 thủ tục với nội dung như sau:CREATE PROCEDURE get_sales_for_title@title varchar(80),@ytd_sales int OUTPUTASSELECT @ytd_sales = ytd_sales FROM titles WHERE title = @titleIF @@ROWCOUNT = 0RETURN(-1)ELSERETURN(0)Biến hệ thống @@ROWCOUNT luôn trả về số bản ghi của lệnh SQL vừa được thực hiện trước đó. Bạn cần tạo 1 script để gọi thủ tục trên. Nếu thủ tục chạy thành công, nó sẽ báo cáo số luợng bán được, ngược lại thì hiển thị thông báo “No Sales Found”. Script này được tạo như thế nào?

  • DECLARE @retval int DECLARE @ytd int EXEC @retval = get_sales_for_title ’Net Etiquette’, @ytd OUTPUTIF @retval < 0PRINT ’No sales found’ELSEPRINT ’Year to date sales: ’ + STR (@ytd) GO
  • DECLARE @retval int DECLARE @ytd int EXEC get_sales_for_title ’Net Etiquette’, @ytdIF @retval < 0PRINT ’No sales found’ELSEPRINT ’Year to date sales: ’ + STR (@ytd)GO
  • DECLARE @retval int DECLARE @ytd int EXEC get_sales_for_title ’Net Etiquette’,@retval OUTPUTIF @retval < 0PRINT ’No sales found’ELSEPRINT ’Year to date sales: ’ + STR (@ytd)GO
  • DECLARE @retval intDECLARE @ytd int EXEC get_sales_for_title’Net Etiquette’, @ytd OUTPUTIF @retval < 0PRINT ’No sales found’ELSEPRINT ’Year to date sales: ’ + STR (@ytd)GO

Câu hỏi 110: Để cấp quyền cho người dùng “Test” được quyền xem dữ liệu của Bảng “tblNhanVien” thì câu lệnh được sử dụng là gì?

  • ✅ GRANT
  • DENY
  • INVOKE
  • SELECT

Câu hỏi 111: Để cấp quyền cho người dùng “Test” được quyền xem dữ liệu của Bảng “tblNhanVien” thì câu lệnh là gì?

  • ✅ GRANT SelectON tblNhanVienTO Test
  • GRANT AllON tblNhanVienTO Test
  • GRANT ViewON tblNhanVienTO Test
  • GRANT ViewTO Test

Câu hỏi 112: Để kết nối CSDL phân tán trong SQL Server, số cổng cần thiết cấu hình giữa hai máy là bao nhiều?

  • ✅ 1433
  • 1422
  • 1444
  • 8080

Câu hỏi 113: Để khai thác đến một bảng của CSDL khác trong cùng Server cần phải xác định thông tin gì?

  • Tất cả các thông tin
  • Tên bảng
  • Tên CSDL
  • Tên người dùng

Câu hỏi 114: Để liên kết đến server khác có những cách nào?

  • Sử dụng câu lệnh truy vấn
  • Sử dụng câu lệnh truy vấn Thông qua của sổ Management Studio
  • Tất cả các phương pháp đều đúng

Câu hỏi 115: Để tạo trigger phải xấc định những nội dung gì

  • Lệnh nào sẽ kích hoạt trigger thực hiện
  • Tất cả các nội dung được liệt kê
  • Tên và bảng chịu tác động
  • Trigger sẽ làm những thao tác gì khi được kích hoạt

Câu hỏi 116: Để thu hồi quyền được sửa của tài khoản người dùng Test với bảng tblNhanVien trên thuộc tính “QueQuan” và “HoTen” đã được cấp trước đó thì câu lệnh là gì?

  • ✅ REVOKE UPDATEON tblNHANVIEN(HoTen, QueQuan)TO test
  • GRANT UPDATEON tblNHANVIEN(HoTen, QueQuan)TO nguoidung1
  • REVOKE ALLON tblNHANVIEN(HoTen, QueQuan)TO nguoidung1
  • REVOKE SELECT, UPDATEON tblNHANVIEN(HoTen, QueQuan)TO nguoidung1

Câu hỏi 117: Để xoá tài khoản đăng nhập “Test” đã có trong hệ thống thì sử dụng câu lệnh là gì?

  • ✅ DROP LOGIN Test
  • DELETE LOGIN Test
  • DELETE Test
  • DROP ACCOUNT Test

Câu hỏi 118: Declare @a int = 5, @b int = null, @c int = 10 Begin if @a > @b AND @a < @c set @a=@c*@aselect @a End Giá trị của a sẽ là?

  • 5
  • 50
  • Null
  • Tất cả các đáp án đều sai

Câu hỏi 119: Dịch vụ chuyển đổi dữ liệu DTS của SQL Server thực hiện chức năng gì?

  • Chuyển dữ liệu giữa các Server
  • Nhân bản dữ liệu
  • Tìm kiếm
  • Tra cứu dữ liệu

Câu hỏi 120: Điều kiện của của phân mảnh phải thoản mãn là gì khi thực hiện phân mảnh ngang

  • Cả hai điều kiện đều đúng
  • Cả hai điều kiện đều sai
  • Các phân mảnh không tách rời, phải có cùng thuộc tính khóa chính
  • Các phân mảnh phải đảm bảo tách rời Ri ∩ Rj = ϕ

Câu hỏi 121: Độ lớn của một cột kiểu CHAR?

  • 1 byte
  • 2 bytes
  • 4 bytes
  • 8 bytes

Câu hỏi 122: Đoạn mã tạo trigger để cho phép chỉ nhập giá trị Nam hoặc Nữ khi thêm vào bảng NHANVIEN là?

  • CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF DELETEAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from INSERTEDif ( @gt not in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)END
  • CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF INSERTAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from INSERTEDif ( @gt not in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)END
  • CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF INSERTAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from INSERTEDif ( @gt in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)END
  • CREATE TRIGGER NV_GTON NHANVIENINSTEAD OF INSERTAsBEGINdeclare @Gt as nvarchar(3)select @gt = GT from NHANVIENif ( @gt not in (‘Nam’, N’Nữ’) )Raiserror(‘Ban nhap sai Gioi tinh’,16,10)END

Câu hỏi 123: Giả sử có 1 CSDL chứa thông tin của các công ty cùng với mã vùng (zip code). Hiện tại CSDL chỉ mới chứa dữ liệu của các công ty với 5 mã vùng khác nhau. Số công ty trong mỗi mã vùng có thể từ 10 đến 5000. Trong tương lai sẽ có thêm nhiều công ty với các mã vùng mới khá Bạn cần tạo 1 truy vấn để xem thông tin từ CSDL. Việc thực thi truy vấn không được ảnh hưởng đến số công ty được trả về. Truy vấn được tạo ra cần thông nhất và làm tối thiểu việc phải bảo trì sửa đổi truy vấn này trong tương lai. Bạn nên làm gi?

  • Chia bảng thành nhiều bảng, mỗi bảng chứa 1 mã vùng. Sau đó xây dựng 1 view kết các bảng này lại sao cho dữ liệu có thể vẫn được xem như chỉ từ 1 bảng
  • Tạo 1 thủ tục (stored procedure) yêu cầu mã vùng như tham số đầu vào, bao gồm tuỳ chọn WITH RECOMPILE khi tạo thủ tục
  • Tạo 1 thủ tục cho mỗi mã vùng
  • Tạo 1 view cho mỗi mã vùng

Câu hỏi 124: Giả sử, CSDL được lập lịch Full Database Backup vào ngày chủ nhật, Differential Database Backup vào ngày thứ ba và thứ năm, còn Log Database Backup cứ mỗi tiếng một lần vào các ngày từ thứ 2 đến thứ 6 trong tuần, Trong trường hợp, ngày thứ sáu có sự cố với CSDL data file bị hỏng, để phục hồi dữ liệu và CSDL hoạt động bình thường, thứ tự các bước phục hồi thực hiện như thế nào?

  • + Khôi phục Full Database của ngày chủ nhật.+ Khôi phục Transaction log backup ngày thứ năm.+ Phục hồi Differential Database của ngày thứ năm.
  • + Khôi phục Full Database của ngày chủ nhật.+ Phục hồi Differential Database của ngày thứ năm.+ Khôi phục Transaction log backup ngày thứ năm.
  • + Khôi phục Transaction log backup ngày thứ năm.+ Phục hồi Differential Database của ngày thứ năm.+ Khôi phục Full Database của ngày chủ nhật.
  • + Phục hồi Differential Database của ngày thứ năm.+ Khôi phục Transaction log backup ngày thứ năm.+ Khôi phục Full Database của ngày chủ nhật.

Câu hỏi 125: Gợi ý nào được đề xuất khi thực hiện sao lưu dữ liệu?

  • Tất cả các phương án đều đúng
  • Thực hiện nhiều sao lưu Differential trong ngày (định kỳ khoảng một vài tiếng một lần)
  • Thực hiện nhiều sao lưu Transaction trong ngày
  • Thực hiện sao lưu Full một lần vào lúc bắt đầu ngày (chuẩn bị làm việc với CSDL)

Câu hỏi 126: Hàm nào trong SQL Server trả về ngày hiện tại của hệ thống?

  • currentdate()
  • Date()
  • Getdate()
  • now()

Câu hỏi 127: 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

  • Không cho phép 2 vòng lăp while lồng nhau
  • Không có kiểu dữ liệu smallint
  • Tên thủ tục prc1 sai
  • Vòng lặp không kết thúc

Câu hỏi 128: Hệ quản trị cơ sở dữ liệu SQL Server 2008 không hỗ trợ tính năng nào sau đây?

  • Định nghĩa dữ liệu
  • Kết nối dữ liệu với các dịch vụ điện toán đám mây
  • Khai phá dữ liệu
  • Khôi phục dữ liệu

Câu hỏi 129: Hỗ trợ kiến trúc Client/Server (Supports Client/Server model) là gì?

  • Server có nhiệm vụ xử lý các yêu cầu và trả lại kết quả cho Client.
  • Tất cả các phương án đều đúng
  • Truy cập dữ liệu được lưu trữ trên Server
  • Ứng dụng có thể chạy trên Client

Câu hỏi 130: Jack cần chèn 1 điểm dừng (save point) có tên là ’Returnback’ vào transaction của anh t Nên dùng lệnh nào sau đây:

  • INSERT SAVEPOINT Returnback
  • INSERT TRANSACTION Returnback
  • SAVE SAVEPOINT Returnback
  • SAVE TRANSACTION Returnback

Câu hỏi 131: Kết quả của câu truy vấn sau là gì?SELECT (25%5) ,(8%2.5)

  • 0 và 0.5
  • 0 và 2
  • 5 và 4.5
  • Câu lệnh gây ra lỗi.

Câu hỏi 132: Kết quả của đoạn T-SQL sau sẽ như thế nào? DECLARE@X VARCHAR(10) = ‘TITL’,@Y VARCHAR(10) = ‘TITLE’BEGINIF @X >= @Y print(‘X is greater’)IF @Y >= @X print(‘Y is greater’) END

  • “X is greater”
  • “Y is greater”
  • Cả “X is greater” và “Y is greater”
  • Không in ra gì cả

Câu hỏi 133: Kết quả của POWER(6, 2) là bao nhiêu?

  • 12
  • 3
  • 36
  • 64

Câu hỏi 134: 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 :

  • Declare @temp int Exec prcTemp @tmp=@tempPrint @temp
  • Declare @temp intExec prcTemp @tmp=@temp outputPrint @temp
  • Declare @tmp int Exec prcTemp @tmp Print @tmp
  • Exec prcTemp @tmp output Print @tmp

Câu hỏi 135: Khi thực hiện thao tác nào với bảng thì trigger được gọi?

  • Delete
  • Insert
  • Tất cả các phương án đều đúng
  • Update

Câu hỏi 136: Khi xảy ra một sự kiện thao tác dữ liệu trong CSDL được lưu tạm vào bảng nào?

  • Deleted
  • Deleted và Inserted
  • Inserted
  • Updated

Câu hỏi 137: Kiểu dữ liệu nào sau đây KHÔNG có trong SQL Server ?

  • Bool
  • Char
  • Nvarchar
  • Text

Câu hỏi 138: Làm cách nào để trả về nhiều giá trị từ 1 procedure?

  • Bạn không thể thực hiện đượ
  • Sử dụng các parameters IN.
  • Sử dụng các parameters OUT parameters.
  • Sử dụng con trỏ.

Câu hỏi 139: Lệnh nào sau đây không thể rollback?

  • DELETE
  • DROP
  • INSERT
  • Tất cả đều sai

Câu hỏi 140: 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

  • 1
  • Lỗi biên dịch ( Compile-time error )
  • Lỗi khi chạy thủ tục (Run-time error )

Câu hỏi 141: Lý do cần thiết phải thực hiện sao lưu dữ liệu?

  • Bị hack
  • Do nguyên nhân bên ngoài, bị vô tình hay cố ý làm sai thông tin
  • ổ đĩa chứa tâp tin CSDL bị hỏng, Server bị hỏng
  • Tất cả các phương án đều đúng

Câu hỏi 142: Mô hình phục hồi thực hiện: “Là mô hình phục hồi toàn bộ hoạt động giao dịch của dữ liệu (Insert, Update, Delete, hoạt động bởi lệnh bcp, bulk insert).”

  • Bulk-Logged Recovery Model
  • Full Recovery model
  • Simple Recovery Model

Câu hỏi 143: Mỗi cơ sở dữ liệu trong SQL Server gồm mấy tập tin?

  • 1
  • 2
  • 3
  • 4

Câu hỏi 144: Một câu lệnh IF… …ELSIF có thể có mấy mệnh đề ELSE? 0 64 1

  • 0 1
  • 1
  • 64
  • Không giới hạn

Câu hỏi 145: Một cơ sở dữ liệu chứa ít nhất là?

  • 1 file mdf
  • 1 file mdf và 1 file ldf
  • 1 file mdf và 1 file ndf
  • 1 file mdf, 1 file ndf và 1 file ldf

Câu hỏi 146: Một cột kiểu NCHAR(25) chiếm dung lượng là?

  • 100 byte
  • 2 byte
  • 25 byte
  • 50 byte

Câu hỏi 147: Mục đích của câu lệnh ALTER TRIGGER là gì?

  • Sửa một trigger đã có
  • Tạo một trigger mới
  • Tất cả các phương án đều đúng
  • Xóa một trigger đã có

Câu hỏi 148: Nếu lưu giá trị 34567.2255 vào một cột có kiểu dữ liệu NUMBER(7,2), giá trị thực sự được lưu trữ là:

  • 34500
  • 34567.22
  • 34567.23
  • 34600

Câu hỏi 149: Người dùng duyệt Web bằng phần mềm gì?

  • Web Browser
  • Web Page
  • Web Server
  • Web Site

Câu hỏi 150: Paul thực hiện lệnh SQL sau:SELECT Customers.name, Customers.ord_id, Orders.ord_dateFROM Customers INNER JOIN OrdersWHERE Customers.cust_id = Orders.cust_idMỗi bảng trong lệnh trên đều chứa 10000 hàng, do đó phải mất nhiều thời gian để thực hiện Để cải thiện việc thực thi truy vấn này, nên dùng đối tượng nào sau đây:

  • Batches
  • Stored Procedures
  • Triggers
  • View

Câu hỏi 151: Phần mềm nào sau đây không phải là một Web Browser?

  • File Zilla
  • Google Chrome
  • Internet Explorer
  • Opera

Câu hỏi 152: Phát biểu nào sau đây mô tả thuộc tính atomicity của 1 transaction ?

  • 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
  • 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
  • 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
  • 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

Câu hỏi 153: Phiên bản cài đặt nào sau đầy đủ cho các doanh nghiệp vừa và nhỏ thực hiện tính năng thương mại điện tử?

  • Enterprise Edition
  • Express Edition
  • Standard Edition
  • Workgroup Edition

Câu hỏi 154: 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?

  • 16 CPUs và 32 GB RAM
  • 32 CPUs và 64 GB RAM
  • 4 CPU và 2 GB RAM
  • 64 CPUs và 128 GB RAM

Câu hỏi 155: Phiên bản Personal của SQL Server có thể cài đặt?

  • Trên hầu hết các phiên bản của windows, kể cả Windows 98.
  • Windows 98
  • Windows Server 2000
  • Windows XP

Câu hỏi 156: Phương pháp phân mảnh thực hiện: Chia quan hệ ban đầu R thành các mảnh (đoạn), mỗi mảnh chứa một số bộ giá trị của R thỏa mãn một tính chất nào đấy (điều kiện phân mảnh).

  • Không phải các phương pháp này
  • Phân mảnh dọc
  • Phân mảnh hỗ hợp
  • Phân mảnh ngang

Câu hỏi 157: Phương pháp phân mảnh thực hiện: Chia tách quan hệ ban đầu R thành các quan hệ Ri có số cột nhỏ hơn, (tập con của R) nhưng mỗi Ri đều phải chứa khóa chính của R

  • Không phải các phương pháp này
  • Phân mảnh dọc
  • Phân mảnh hỗ hợp
  • Phân mảnh ngang

Câu hỏi 158: Phương pháp phân tán nào mà dữ liệu để tại một Server và các máy khách (Client) liên kết đến để khai thác?

  • Chia nhỏ dữ liệu
  • Phương thức lai
  • Sao lặp dữ liệu
  • Tập trung dữ liệu

Câu hỏi 159: Quy luật nào sau đây không đúng đối với một thủ tục (stored procedure).

  • Bạn có thể tạo một bảng tạm riêng bên trong 1 thủ tục
  • Bạn có thể tạo, tạo lại, hay xóa các đối tượng bên trong 1 thủ tục Các lệnh mà bạn có thể sử dụng là CREATE, DROP, và SELECT INTO trong thủ tục của bạn
  • Bạn có thể tham chiếu đến 1 đối tượng không nằm trong cùng 1 database với thủ tục của bạn
  • Bạn có thể thực thi 1 thủ tục mà thủ tục này gọi 1 thủ tục khác. Thủ tục được gọi có thể truy xuất đến các đối tượng được tạo ra bởi thủ tục gọi

Câu hỏi 160: Sự khác biệt cơ bản giữa dettach và xóa CSDL?

  • CSDL vẫn còn trong máy nhưng tạm thời bị tách khỏi Instance
  • CSDL xóa hẳn nhưng instance vẫn quản ly
  • CSDL xóa hẳn trong máy

Câu hỏi 161: Sự khác nhau cơ bản trong 2 trường hợp sau:1. Sửa trigger bằng lệnh Alter trigger2. Xóa trigger bằng lệnh drop trigger sau đó tạo lại bằng lệnh create trigger

  • Khi dùng lệnh Alter trigger thì các quyền đã cấp phát cho trigger đó vẫn còn
  • Khi dùng lệnh Drop thì toàn bộ quyền cấp phát trên trigger bị mất và phải cấp phát lại
  • Tất cả các phương án đều đúng

Câu hỏi 162: Tập tin có phần mở rộng là .ndf được dùng để làm gì?

  • Chỉ dùng khi cơ sở dữ liệu được phân chia chứa trên nhiều đĩa
  • Chứa dữ liệu chính
  • Ghi lại các thay đổi dữ liệu giúp thực hiện rollback khi cần

Câu hỏi 163: Thành phần nào không phải đối tượng trong SQL Server?

  • Constraint
  • Replication
  • Table
  • Trigger

Câu hỏi 164: Thành phần nào sau đây của SQL Server cho phép người dùng quản lý các đối tượng cơ sở dữ liệu bằng đồ họa?

  • Books Online
  • SQL Server Configuration Manager
  • SQL Server Management Studio

Câu hỏi 165: Thành phần nào sau đây thuộc phía Server trong mô hình Client – Server?

  • Database
  • DB Library Application
  • Network
  • OLE DB Application

Câu hỏi 166: Thay vì thực hiện truy vấn câu lệnh:SELECT * FROM Server2.QuanlyKH.dbo.KhachHangĐể thực hiện trong suốt dữ liệu với tên là “QLKH” thì câu lệnh đúng là gì?

  • Create QLKH for  Server2.QuanlyKH.dbo.KhachHangSelect * from QLKH
  • Create synonym QLKH for  Server2.QuanlyKH.dbo.KhachHangSelect * from QLKH
  • Create synonym QLKH for  KhachHangSelect * from QLKH
  • Create synonym QLKH for  QuanlyKH.dbo.KhachHangSelect * from QLKH

Câu hỏi 167: Thứ tự kiêm tra ràng buộc toàn vẹn dữ liệu là gì?

  • Constraint -> Trigger instead of ->Trigger For/After
  • Constraint -> Trigger instead of -> Trigger For/After
  • Trigger For/After -> Trigger instead of -> Constraint
  • Trigger instead of -> Constraint -> Trigger For/After

Câu hỏi 168: Thủ tục GetSalesPersonData được tạo ra trả về số tiền bán được của nhân viên:CREATE PROCEDURE GetSalesPersonData@SalesPersonID int,@RegionID int,@SalesAmount money OUTPUTASSELECT @SalesAmount = SUM(SalesAmount)FROM SalesInformationWHERE @SalesPersonID = SalesPersonIDLệnh nào sau đây sẽ thực thi đúng thủ tục trên?

  • EXECUTE GetSalesPersonData @SalesPersonID = 1, @RegionID= 1, @SalesAmount= NULL
  • EXECUTE GetSalesPersonData @SalesPersonID=1, @RegionID=1, @SalesAmount=0
  • EXECUTE GetSalesPersonData 1, 1, NULL
  • EXECUTE GetSalesPersonData 1,1, @SalesAmount OUTPUT

Câu hỏi 169: Thủ tục sp_addlinkedserver dùng để thực hiện gì?

  • Đăng nhập và kết nối đến Server khác
  • Hủy bỏ liên kết đến Server khác
  • Kiểm tra việc tạo liên kết đến Server khác có thành công hay không
  • Thêm môt Linked Server (Cho phép liên kết đến Server khác)

Câu hỏi 170: Thuộc tính nào sau đây không dùng để cấu hình cơ sở dữ liệu SQL Server?

  • Auto Read
  • Auto Shink
  • Read Only
  • Restrict Access

Câu hỏi 171: Trigger khác so với thủ tục lưu ở nội dung gì?

  • Không cần gọi bằng lệnh EXEC mà tự động được kích hoạt khi dữ liệu trên bảng liên quan được cập nhật
  • Không có tham số và giá trị trả về
  • Tất cả các phương án đều đúng

Câu hỏi 172: Trong cơ sở dữ liệu hệ thống, tập tin nào sau đây lưu trữ các thông tin login account?

  • Master
  • Model
  • Msdb
  • Tempdb

Câu hỏi 173: Trong table NHANVIEN, giá trị LUONG của nhân viên tên A (TenNV = ‘A’) trong T-SQL sau bằng mấy?BEGINUPDATE NHANVIEN SET luong = 6000 WHERE TenNV = ‘A’SAVE tran save_AUPDATE NHANVIEN SET luong = 7500 WHERE TenNV = ‘A’SAVE tran save_AUPDATE NHANVIEN SET luong = 3000 WHERE TenNV = ‘A’SAVE Tran save_A1ROLLBACK tran save_AENDCOMMIT

  • 3000
  • 6000
  • 7500
  • Không phải các giá trị trên

Câu hỏi 174: 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

  • 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
  • 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
  • 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
  • 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

Câu hỏi 175: Xem xét thủ tục sau:CREATE PROCEDURE INS_NV (@V_ID int, @V_NAME VARCHAR(20) = ‘NGUYEN’, @V_ADD VARCHAR(20)) ASBEGININSERT INTO Nhanvien (Manv, TenNV, Diachi)VALUES (@v_id, @v_name, @v_ADD)ENDĐể thực hiện đoạn thủ tục trên thì dùng lệnh?

  • EXECUTE INS_NV 3, ‘LONG’
  • EXECUTE INS_NV 3,’HA’,’HANOI’
  • EXECUTE INS_NV@V_ID = @V_NAME = ‘LONG’, V_ADD = ‘HAIPHONG’
  • Không lựa chọn nào đúng

Câu hỏi 176: Ý nghĩa của đoạn mã sau là gì?CREATE TRIGGER TG_PCON PHANCONGINSTEAD OF insertASBEGINdeclare @tg as floatSELECT @tg = SoGio from INSERTEDif (@tg<5 and @tg>10)Raiserror(‘Thoi gian chi nhap tu 5 den 10’, 16,1)END

  • Đ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
  • 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
  • Tạo trigger khi sửa phân công chỉ được nhận giá trị từ 5 đến 10
  • Tất cả các phương án đều đúng