



Preview text:
  lOMoAR cPSD| 47206071  
ĐỀ THI CUỐI HỌC KỲ 
HỌC KỲ 2A NĂM HỌC 2020 - 2021 
TÊN MÔN THI : Hệ Quản Trị Cơ Sở Dữ Liệu    MSMH  : TIN210DV01 
  Có câu hỏi trắc nghiệm   
Thời lượng thi : 90 phút (không kể thời gian phát đề)     Thu lại đề thi 
□ Không thu lại đề thi   
□ Được tham khảo tài liệu 
_ Không được tham khảo tài liệu 
Ghi chú: Sinh viên làm bài trên giấy thi của trường (phần tự luận và trắc nghiệm). 
Không làm bài trên đề thi.  Phải ghi rõ Mã đề thi    
NỘI DUNG ĐỀ THI I. 
PHẦN TRẮC NGHIỆM ( 4 điểm/ 20 câu, mỗi câu 0,2 điểm) 
Câu 1: Cho 2 table A và B có mối quan hệ tham chiếu . A là table cha, B là table con. Nếu xóa dữ 
liệu trên table A mà dữ liệu đó được tham chiếu bởi table B thì hệ quản trị CSDL SQL server sẽ 
a. Không cho phép xóa dữ liệu trên table A nếu khi khai báo tham chiếu khóa ngoại có chỉ  định on delete set cascade 
b. Xóa dữ liệu trên table A đồng thời xóa luôn những dòng tương ứng trên table B nếu khi 
khai báo tham chiếu khóa ngoại có chỉ định on delete set cascade 
c. óa dữ liệu trên table A không xóa những dòng tương ứng trên table B nếu khi khai báo 
tham chiếu khóa ngoại có chỉ định on delete set cascade 
d. Xóa dữ liệu trên table A đồng thời xóa luôn những dòng tương ứng trên table B nếu khi 
khai báo tham chiếu khóa ngoại có không chỉ định on delete set cascade 
Câu 2: Bảng Sinhviencó các cột sau: mssv, hoten, khoahoc, GPA. Để đảm bảo yêu cầu GPA của 
sinh viên từ 0 đến 10 nếu khóa học (khoahoc) của sinh viên <=2014, GPA của sinh viên từ 0 
đến 4 nếu khóa học (khoahoc) của sinh viên > 2014. Nên làm gì 
a. Tạo ràng buộc CHECK ((GPA between 0 AND 10 AND khoahoc <=2014) AND (GPA 
between 0 AND 4 AND khoahoc > 2014)). 
b. Tạo ràng buộc CHECK ((GPA between 0 AND 10 AND khoahoc <=2014) OR (GPA 
between 0 AND 4 AND khoahoc > 2014)). 
c. Tạo ràng buộc CHECK (((GPA between 0 AND 10) OR (GPA between 0 AND 4)) 
AND (khoahoc > 2014 OR khoahoc <= 2014)). 
d. Tạo ràng buộc CHECK ((GPA between 0 OR 10 and khoahoc <=2014) AND (GPA 
between 0 AND 4 OR khoahoc > 2014)). 
Câu 3: Mục đích của việc sử dụng index 
a. Tăng tốc độ truy xuất dữ liệu 
b. Tìm kiếm dữ liệu chính xác hơn 
c. Giải quyết việc tranh chấp dữ liệu dùng chung 
d. Đảm bảo an toàn dữ liệu 
Câu 4: Chọn phát biểu đúng 
a. Truy xuất dữ liệu thông qua index luôn luôn nhanh hơn đọc dữ liệu trực tiếp 
b. Có thể tạo ra nhiều clustered index trên cùng một bảng  TIN210DV01 – ĐỀ A  1    lOMoAR cPSD| 47206071
c. Có thể tạo ra 1 cluster index trên 1 bảng 
d. Chỉ có thể tạo ra 1 nonsluster index trên 1 bảng  Câu 5: T_SQL 
a. Là ngôn ngữ truy vấn dữ liệu chuẩn 
b. Là ngôn ngữ gồm 4 lệnh insert, update, delete, select 
c. Là ngôn ngữ lập trình cơ sở dữ liệu của sql server 
d. Là những lệnh truy xuất csdl được nhúng vào ngôn ngữ C 
Câu 6: Chọn phát biểu đúng 
a. Mỗi khi thực thi stored procedure thì code của nó sẽ lại được biên dịch lại 
b. Các tham số của stored procedure luôn là hằng số 
c. Chỉ cần viết Stored Procedure 1 lần, sau đó có thể gọi nó nhiều lần ở trong ứng dụng 
d. Sử dụng stored procedure làm tăng tính bảo mật của hệ thống 
Câu 7: Tình trạng 2 hay nhiều transaction đợi một số mục dữ liệu mà transaction khác đang giữ  khóa được gọi là  a. Idle  b. Waiting  c. Deadlock  d. Ready 
Câu 8: Để đơn giản hóa việc quản lý user và quyền của user trên database nên 
a. Khi cấp quyền cho user nên chọn chế độ ủy quyền để user có thể ủy quyền cho user  khác 
b. Nên xác định 1 tập hợp các role dựa theo yêu cầu công việc và gán mỗi role những 
quyền hạn khác nhau. Sau đó, chỉ cần chuyển các user vào các role thích hợp hơn. Hạn 
chế cấp quyền cho mỗi user riêng lẻ. 
c. Nên cấp quyền riêng lẻ cho từng user. 
d. Hạn chế số người sử dụng hệ thống 
Câu 9: Quá trình chuyển dữ liệu thành dạng không đọc được nếu không biết khóa được gọi à  a. Data authentication 
b. Database security management  c. Data security  d. Data encryption 
Câu 10: Bạn là nhà quản tri DB cho công ty XYZ. Một trong các yêu cầu quản trị là bạn cần gán 
quyền cho các nhân viên của phòng kế toán sao cho họ được phép truy vấn dữ liệu nhưng 
không được quyền sửa đổi dữ liệu. Hãy xác định fixed database role nào bạn nên gán cho các  nhân viên này?  a. db_datareader  b. db_backupoperator  c. db_securityadmin  d. db_denydatawriter 
Câu 11: Chọn phát biểu sai 
a. Đối với hệ quản trị SQL SERVER 2008 thì 1 record chỉ nằm trên một PAGE. 
b. Page có kích thước quá nhỏ sẽ tạo nên nhiều phép đọc dữ liệu giữa RAM và PAGE. 
c. Page có kích thước quá lớn sẽ tạo nên có nhiều dữ liệu thừa được đọc vào RAM.  TIN210DV01 – ĐỀ A  2    lOMoAR cPSD| 47206071
d. Giá trị mặc định 1 page của SQL SERVER là 4KB. 
Câu 12: File log có đuôi là  a. .mdf  b. .ldf  c. .ndf  d. .dbf 
Câu 13: Chọn phát biều đúng 
a. Data được truy xuất theo cơ chế ngẫu nhiên 
b. Log được truy xuất theo cơ chế tuần tự 
c. Data được truy xuất theo cơ chế tuần tự 
d. Log được truy xuất theo cơ chế ngẫu nhiên 
Câu 14: Database nào sao đây lưu trữ các đối tượng tạo ra tạm thời trong quá trình làm việc bởi 
user hay do bản thân SQL Server engine  a. Tempdb  b. Model  c. Master  d. Msdb 
Câu 15: Phát biểu nào sau đây đúng 
a. Giá của HDD cao hơn SSD  b. SSD chống sốc cao hơn 
c. Tốc độ SSD cao hơn HDD 
d. Độ bền của SSD cao hơn HDD 
Câu 16: Một thủ tục được tự động thực hiện khi ta thay đổi dữ liệu trong 1 table của SQL Server 
qua các lệnh Update, Insert, Delete thuộc loại:  a. Trigger  b. Stored Procedure  c. Extended Stored Procedure  d. Rule 
Câu 17: Bảng nào được phép dùng trong DELETE trigger  a. Bảng trigger  b. Bảng inserted  c. Bảng deleted  d. Bảng updated 
Câu 18: Chức năng nào sau đây không phải là chức năng của DBMS 
a. Cung cấp môi trường tạo lập csdl 
b. Cung cấp môi trường cập nhật và khai thác dữ liệu 
c. Cung cấp công cụ kiểm soát, điều khiển truy cập vào csdl 
d. Kiểm tra và hỗ trợ phần mềm cho các thiết bị ngoại vi (chuột, bàn phím,..) để khai thác 
chúng 1 cách thuận tiện và hiệu quả 
Câu 19: Chọn phát biểu đúng về tính độc lập dữ liệu – chương trình 
a. Thay đổi cấu trúc logic dữ liệu ở thì phải viết lại chương trình ứng dụng 
b. Thay đổi cấu trúc lưu trữ dữ liệu thì phải viết lại chương trình ứng dụng  TIN210DV01 – ĐỀ A  3    lOMoAR cPSD| 47206071
c. Thay đổi cấu trúc logic dữ liệu không cần phải viết lại chương trình ứng dụng 
d. Thay đổi cấu trúc lưu trữ dữ liệu không cần phải viết lại chương trình ứng dụng 
Câu 20: Chọn phát biểu sai 
a. Một VIEW chỉ ứng với một câu truy vấn dữ liệu 
b. Các hàm sum, count không được phép sử dụng trong View 
c. Hệ thống View tốt sẽ thể hiện chính xác các góc nhìn nghiệp vụ khác nhau của nguời  dùng 
d. Nếu dữ liệu trên bảng thay đổi thì dữ liệu của các View liên quan sẽ thay đổi 
II. PHẦN TỰ LUẬN (6 điểm) 
Cho cơ sở dữ liệu của cửa hàng bảo trì xe máy gồm các bảng 
1. XeMay(SoXe Char(11), NhanHieu Varchar(50), TenKhachHang Varchar(50), SoDTKH 
Varchar(10), DiaChiKH VarChar(50)) : lưu trữ thông tin xe máy đến bảo trì gồm số xe, 
nhãn hiệu, tên khách hàng, số điện thoại và địa chỉ khách hàng. Số xe là khóa chính. 
2. NhanVienBaoTri(MaNV Char(4), Ho Varchar(30), Ten Varchar(10), BacTho int, SoDTNV 
Varchar(10), DiaChiNV Varchar(50)): lưu trữ thông tin nhân viên sửa chữa bảo trì của cửa 
hàng gồm có mã nhân viên, họ tên nhân viên, bậc thợ, số điện thoại, địa chỉ. Mã nhân viên  là khóa chính. 
3. DMBaoTri(MaDM Char(5), TenDM Varchar(50), DVT Varchar(10), Gia Int): lưu trữ 
thông tin danh mục bảo trì gồm có mã danh mục, tên danh mục (như nhớt, vỏ, ruột, tiền 
công, …), đơn vị tính (như lít, cái, lượt, …) và giá tiền. Mã danh mục là khóa chính. 
4. PhieuBaoTri(SoPhieu Char(10), Ngay Date, SoXe Char(11), MaNVBaoTri Char(4), 
MaNVKeToan Char(4), TongTien Int): lưu trữ thông tin về phiếu bảo trì gồm có số phiếu, 
ngày phiếu của xe (SoXe), do một nhân viên bảo trì đảm nhận và một nhân viên kế toán 
thu tiền. Số phiếu là khóa chính. 
5. PhieuBaoTriCT(SoPhieu Char(10), MaDM Char(5), SoLuong Int, ThanhTien Int): lưu 
trữ thông tin chi tiết của phiếu bảo trì gồm có số phiếu, mã danh mục, số lượng và thành 
tiền (SoLuong*Gia). Khóa chính gồm có số phiếu và mã danh mục. Câu 1: (2 điểm) 
a. (1 điểm) Cho biết thông tin nhân viên gồm mã nhân viên, họ, tên đã bảo trì xe của khách  hàng Võ Thị Thu Hà. 
b. (1 điểm) Tìm số lượng xe mà mỗi nhân viên đã tham gia bảo trì trong năm 2020 
Câu 2: (2 điểm) Viết store procedure có tên pro_Cau2 với tham số đầu vào là mã nhân viên. Tính 
và xuất ra tham số ra tổng số lượng phiếu bảo trì, tổng số tiền phiếu bảo trì mà nhân viên này  đã làm 
Câu 3: (2 điểm) Tạo trigger có tên trg_Cau3 đảm bảo yêu cầu trong 1 ngày không phân công quá 
10 phiếu bảo trì cho 1 nhân viên.  ---Hết---  TIN210DV01 – ĐỀ A  4