Hệ quản trị CSDL - IT10 (253)
Cú pháp để truy xuất đến một bảng của CSDL khác năm khác Server là:
A. [ServerName][.DatabaseName][.owner][.tableName]
B. [ServerName][.tableName]
C. [ServerName][.owner][.tableName]
D. [DatabaseName][.owner][.tableName] [.ServerName]
Cho hai bảng
tblHOADON(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
A. Update
B. Delete
C. Select
D. Insert
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ì?
A. GRANT SELECT, UPDATE ON tblNHANVIEN(HoTen, QueQuan) TO nguoidung1
B. GRANT VIEW, UPDAE ON tblNHANVIEN(HoTen, QueQuan) TO nguoidung1
C. GRANT SELECT, UPDATE ON tblNHANVIEN TO nguoidung1
D. GRANT UPDATE ON tblNHANVIEN(HoTen, QueQuan) TO nguoidung1
Lệnh nào sau đây không thể rollback?
A. INSERT
B. Tất cả đều sai
C. DROP
D. DELETE
Các trường hợp nào bắt buộc phải sử dụng trigger?
A. 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
B. Các ràng buộc mà không thể mô tả khi định nghĩa bảng
C. Tất cả các phương án đều đúng
Cho bảng tblNHANVIEN(sMaNV , sHoTen, sGioiTinh, sQueQuan).
Đâu là câu lệnh thêm cột fHeSL với ràng buộc
- fHeSL có giá trị mặc định là 2.34
- fHeSL có giá trị tối đa là 8
A. ALTER TABLE tblNHANVIEN ADD fHeSL float Default(2.34) Check(fHeSL>=8)
B. ALTER TABLE tblNHANVIEN ADD f HeSL float Default(2.34) Check( f HeSL<=8)
C. ALTER TABLE tblNHANVIEN ADD fHeSL float Default(2.34)
D. ALTER TABLE tblNHANVIEN ADD fHeSL float Check(fHeSL<=8)
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
Câ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 DSNV
as
begin
Select tblNV.MaNV, Hoten, GioiTinh, DiaChi, DienThoai, Email
From tblNV, Server1.QLGV.dbo.tblNV
Where
…..
end
A. tblNV.MaNV = Server1.QLGV.dbo.tblNV.MaNV
B. tblNV.MaNV = Server1. tblNV.MaNV
C. MaNV = tblNV.MaNV
D. tblNV.MaNV = QLGV.dbo.tblNV.MaNV
Để 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ì?
A. Tên người dùng
B. Tên CSDL
C. Tất cả các thông tin
D. Tên bảng
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
A. Seclect MaNV, HoTen, TrinhDo From tblNV, ServerAo.QuanLyBH.dbo.tblNV2 Where tblNV.MaNV = ServerAo.QuanLyBH.dbo.tblNV2.MaNV
B. Seclect tblNV.MaNV, HoTen, TrinhDo From tblNV, tblNV2 Where tblNV.MaNV = tblNV2.MaNV
C. Seclect tblNV.MaNV, HoTen, TrinhDo From tblNV, QuanLyBH.tblNV2 Where tblNV.MaNV = QuanLyBH.tblNV2.MaNV
D. Seclect tblNV.MaNV, HoTen, TrinhDo From tblNV, ServerAo.QuanLyBH.dbo.tblNV2 Where tblNV.MaNV = ServerAo.QuanLyBH.dbo.tblNV2.MaNV
Cho T-SQL block sau, dòng nào gây ra lỗi?
1. DECLARE
2. @V_DEPTNO INT
3. BEGIN
4. SET @V_DEPTNO = 20
5. SELECT ENAME, SALARY
FROM EMP WHERE DEPTNO = @V_DEPTNO
6. END
A. Không có dòng nào gây lỗi.
B. Dòng 4
C. Dòng 5
D. Dòng 2
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
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
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
Đặ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
Tại sao cần dùng công cụ như Flume hoặc Kafka trong Big Data?
A. Để chuyển dữ liệu thời gian thực vào hệ thống phân tích
B. Để vẽ biểu đồ
C. Để thiết kế giao diện
D. Để lưu dữ liệu vào Word
Câu lệnh nào dùng để tạo bảng mới trong cơ sở dữ liệu?
A. INSERT
B. MAKE TABLE
C. CREATE TABLE
D. NEW TABLE
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 đó?
A. CREATE PROC spTenSP As BEGIN Declare int @y Select sTenSP From tblSANPHAM Where sMaSP not in (Select sMaSP from tblCTHOADON as A, tblHOADON as B Where year(dNgayLap) = @y and A.sMaHD = B.sMaHD) END
B. CREATE PROC spTenSP(int @y) As BEGIN Select sTenSP From tblSANPHAM Where sMaSP not in (Select sMaSP from tblCTHOADON as A, tblHOADON as B Where year(dNgayLap) = @y and A.sMaHD = B.sMaHD) END
C. CREATE PROC spTenSP As BEGIN Declare int @y Select sTenSP From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C Where year(dNgayLap) = @y and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHD END
D. CREATE PROC spTenSP(int @y) As BEGIN Select sTenSP From tblSANPHAM as A, tblCTHOADON as B, tblHOADON as C Where year(dNgayLap) = @y and A.sMaSP = B.sMaSP and B.sMaHD = C.sMaHD END
Một hệ thống lưu trữ Big Data tốt cần có đặc điểm nào sau đây?
A. Không cần mở rộng
B. Chỉ chạy đơn máy
C. Chỉ dùng RAM
D. Có khả năng mở rộng ngang (horizontal scalability)
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
Câu lệnh SQL nào dùng để thêm một dòng dữ liệu mới vào bảng đã có?
A. DELETE
B. UPDATE
C. SELECT
D. INSERT INTO