Trắc nghiệm Tin học 11 Kết nối tri thức Bài 17: Quản trị cơ sở dữ liệu trên máy tính - Đề 01
Trắc nghiệm Tin học 11 Kết nối tri thức Bài 17: Quản trị cơ sở dữ liệu trên máy tính - Đề 01 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!
Câu 1: Trong ngữ cảnh của cơ sở dữ liệu quan hệ, khái niệm nào sau đây dùng để chỉ một tập hợp các dữ liệu có cấu trúc, được tổ chức thành các hàng và cột?
- A. Bản ghi
- B. Bảng
- C. Trường
- D. Mối quan hệ
Câu 2: Khi thiết kế cấu trúc cho bảng "HOC_SINH" trong một hệ thống quản lý trường học, trường nào sau đây không phải là một thuộc tính (field) cần thiết để mô tả thông tin cơ bản của một học sinh?
- A. Ma_hoc_sinh
- B. Ho_ten
- C. Ngay_sinh
- D. Ten_giao_vien_chu_nhiem
Câu 3: Trong một bảng, mỗi hàng đại diện cho một đối tượng cụ thể (ví dụ: một học sinh, một sản phẩm, một đơn hàng). Khái niệm nào sau đây dùng để chỉ một hàng trong bảng?
- A. Bản ghi (Record)
- B. Trường (Field)
- C. Khóa chính (Primary Key)
- D. Kiểu dữ liệu (Data Type)
Câu 4: Khi xác định kiểu dữ liệu cho các trường trong bảng "SAN_PHAM" để quản lý cửa hàng, trường "Gia_ban" (giá bán) nên chọn kiểu dữ liệu nào để lưu trữ giá tiền một cách chính xác nhất và hỗ trợ các phép tính toán liên quan đến tiền tệ?
- A. Text (Văn bản)
- B. Integer (Số nguyên)
- C. Decimal/Currency (Số thực/Tiền tệ)
- D. Boolean (Logic)
Câu 5: Trường "Ma_san_pham" trong bảng "SAN_PHAM" được chọn làm khóa chính. Điều này có ý nghĩa gì đối với dữ liệu trong trường "Ma_san_pham"?
- A. Giá trị trong trường này có thể lặp lại ở các bản ghi khác nhau.
- B. Mỗi bản ghi phải có một giá trị duy nhất và không được để trống.
- C. Giá trị trong trường này có thể để trống (NULL).
- D. Trường này chỉ được sử dụng để tạo mối quan hệ với bảng khác.
Câu 6: Tại sao việc xác định khóa chính (Primary Key) là bước quan trọng và cần thiết khi thiết kế cấu trúc bảng trong CSDL quan hệ?
- A. Để làm cho bảng trông đẹp mắt hơn.
- B. Để giảm số lượng trường trong bảng.
- C. Để tự động sắp xếp các bản ghi theo thứ tự chữ cái.
- D. Để xác định duy nhất mỗi bản ghi và làm cơ sở cho mối quan hệ giữa các bảng.
Câu 7: Xét hai bảng: "LOP_HOC" (Ma_lop, Ten_lop, Si_so) và "HOC_SINH" (Ma_hoc_sinh, Ho_ten, Ngay_sinh, Ma_lop). Để thiết lập mối quan hệ giữa hai bảng này, trường nào trong bảng "HOC_SINH" sẽ đóng vai trò là khóa ngoại (Foreign Key)?
- A. Ma_hoc_sinh
- B. Ho_ten
- C. Ngay_sinh
- D. Ma_lop
Câu 8: Mục đích chính của việc sử dụng khóa ngoại (Foreign Key) trong thiết kế CSDL là gì?
- A. Thiết lập mối quan hệ giữa các bảng và đảm bảo tính toàn vẹn tham chiếu.
- B. Xác định duy nhất từng bản ghi trong bảng.
- C. Lưu trữ các giá trị duy nhất cho mỗi trường.
- D. Tăng tốc độ tìm kiếm dữ liệu trong một bảng.
Câu 9: Giả sử bạn đang thiết kế CSDL cho một thư viện. Bạn có bảng "SACH" (Ma_sach, Ten_sach, Tac_gia, Ma_the_loai) và bảng "THE_LOAI" (Ma_the_loai, Ten_the_loai). Trường "Ma_the_loai" trong bảng "SACH" sẽ là gì?
- A. Khóa chính (Primary Key)
- B. Khóa ngoại (Foreign Key)
- C. Trường thông thường
- D. Không cần thiết trong bảng SACH
Câu 10: Khi thiết kế bảng "KHACH_HANG" (Ma_khach_hang, Ten_khach_hang, Dia_chi, So_dien_thoai), trường nào là ứng viên sáng giá nhất để chọn làm khóa chính, đảm bảo tính duy nhất và ổn định?
- A. Ma_khach_hang
- B. Ten_khach_hang
- C. Dia_chi
- D. So_dien_thoai
Câu 11: Tại sao trường "Ten_khach_hang" trong bảng "KHACH_HANG" (xem câu 10) thường không được chọn làm khóa chính?
- A. Vì tên khách hàng quá dài.
- B. Vì tên khách hàng không thể là kiểu số.
- C. Vì tên khách hàng có thể trùng nhau hoặc thay đổi theo thời gian.
- D. Vì trường này không thể tạo mối quan hệ với bảng khác.
Câu 12: Khi xác định cấu trúc bảng, việc chọn kiểu dữ liệu phù hợp cho từng trường có ý nghĩa quan trọng như thế nào?
- A. Chỉ để làm cho bảng trông gọn gàng hơn.
- B. Chỉ ảnh hưởng đến màu sắc hiển thị của dữ liệu.
- C. Chỉ để hạn chế người dùng nhập sai dữ liệu.
- D. Ảnh hưởng đến khả năng lưu trữ, tính toán, hiệu quả sử dụng bộ nhớ và tốc độ xử lý.
Câu 13: Ràng buộc toàn vẹn nào sau đây được đảm bảo bởi Khóa chính (Primary Key)?
- A. Ràng buộc toàn vẹn thực thể (Entity Integrity): Đảm bảo mỗi bản ghi là duy nhất và khóa chính không NULL.
- B. Ràng buộc toàn vẹn tham chiếu (Referential Integrity): Đảm bảo mối quan hệ giữa các bảng được duy trì.
- C. Ràng buộc miền giá trị (Domain Integrity): Đảm bảo giá trị dữ liệu nằm trong phạm vi cho phép.
- D. Ràng buộc nghiệp vụ (Business Logic): Đảm bảo dữ liệu tuân thủ các quy tắc kinh doanh.
Câu 14: Ràng buộc toàn vẹn nào sau đây được đảm bảo bởi Khóa ngoại (Foreign Key)?
- A. Ràng buộc toàn vẹn thực thể (Entity Integrity): Đảm bảo mỗi bản ghi là duy nhất và khóa chính không NULL.
- B. Ràng buộc toàn vẹn tham chiếu (Referential Integrity): Đảm bảo mối quan hệ giữa các bảng được duy trì.
- C. Ràng buộc miền giá trị (Domain Integrity): Đảm bảo giá trị dữ liệu nằm trong phạm vi cho phép.
- D. Ràng buộc nghiệp vụ (Business Logic): Đảm bảo dữ liệu tuân thủ các quy tắc kinh doanh.
Câu 15: Khi thiết kế bảng "DIEM" để lưu điểm của học sinh, bạn cần các trường: Ma_hoc_sinh, Ma_mon_hoc, Diem_so, Hoc_ky, Nam_hoc. Để xác định duy nhất một bản ghi điểm (điểm của một học sinh cho một môn học trong một học kỳ, năm học cụ thể), bạn nên chọn khóa chính là trường nào hoặc kết hợp các trường nào?
- A. Chi Ma_hoc_sinh
- B. Chi Ma_mon_hoc
- C. Ket hop Ma_hoc_sinh va Ma_mon_hoc
- D. Ket hop Ma_hoc_sinh, Ma_mon_hoc, Hoc_ky, va Nam_hoc
Câu 16: Giả sử bạn có bảng "DON_HANG" (Ma_don_hang, Ngay_dat, Ma_khach_hang) và bảng "CHI_TIET_DON_HANG" (Ma_chi_tiet, Ma_don_hang, Ma_san_pham, So_luong, Don_gia). Trường nào trong bảng "CHI_TIET_DON_HANG" vừa là một phần của khóa chính của bảng này, vừa là khóa ngoại tham chiếu đến bảng "DON_HANG"?
- A. Ma_chi_tiet
- B. Ma_don_hang
- C. Ma_san_pham
- D. So_luong
Câu 17: Khi thiết kế bảng "NHAN_VIEN" (Ma_nhan_vien, Ho_ten, Ngay_sinh, Gioi_tinh, Luong, Ma_phong_ban), trường "Gioi_tinh" nên chọn kiểu dữ liệu nào để tiết kiệm bộ nhớ và đảm bảo chỉ lưu trữ được một trong hai giá trị "Nam" hoặc "Nu" (hoặc tương đương)?
- A. Boolean (hoặc kiểu số nhỏ như Tinyint)
- B. Text (Văn bản)
- C. Date (Ngày)
- D. Decimal (Số thực)
Câu 18: Bạn được giao nhiệm vụ thiết kế CSDL cho một hệ thống quản lý đặt phòng khách sạn. Bạn cần tạo bảng "PHONG" để lưu thông tin các phòng. Các trường cần thiết ban đầu là: So_phong, Loai_phong, Gia_phong, Trang_thai. Trường nào nên được chọn làm khóa chính cho bảng "PHONG"?
- A. So_phong
- B. Loai_phong
- C. Gia_phong
- D. Trang_thai
Câu 19: Tiếp theo bài toán khách sạn (câu 18), bạn tạo bảng "DAT_PHONG" (Ma_dat_phong, Ngay_den, Ngay_di, Ma_khach_hang, So_phong). Mối quan hệ giữa bảng "DAT_PHONG" và bảng "PHONG" được thiết lập thông qua trường nào?
- A. Ma_dat_phong
- B. Ma_khach_hang
- C. Ngay_den
- D. So_phong
Câu 20: Một trường trong bảng được mô tả là "có thể có giá trị lặp lại và có thể để trống". Trường này KHÔNG THỂ đóng vai trò là gì?
- A. Khóa chính (Primary Key)
- B. Khóa ngoại (Foreign Key)
- C. Trường thông thường
- D. Một phần của khóa chính ứng viên
Câu 21: Trong CSDL quản lý sản phẩm, bảng "SAN_PHAM" có các trường: Ma_SP, Ten_SP, Mo_ta, Gia_nhap, Gia_ban, So_luong_ton, Ngay_cap_nhat. Bạn nhận thấy rằng trường "Ngay_cap_nhat" đôi khi bị bỏ trống khi thêm sản phẩm mới. Điều này có vi phạm ràng buộc toàn vẹn nào không nếu trường này không phải là khóa chính hay khóa ngoại?
- A. Vi phạm ràng buộc toàn vẹn thực thể.
- B. Vi phạm ràng buộc toàn vẹn tham chiếu.
- C. Vi phạm ràng buộc miền giá trị.
- D. Không vi phạm ràng buộc toàn vẹn mặc định nếu không khai báo NOT NULL.
Câu 22: Bạn đang thiết kế CSDL cho một hệ thống quản lý dự án. Bạn có bảng "DU_AN" (Ma_du_an, Ten_du_an, Ngay_bat_dau, Ngay_ket_thuc) và bảng "NHAN_VIEN" (Ma_nhan_vien, Ten_nhan_vien, Chuc_vu). Để ghi nhận nhân viên nào tham gia dự án nào, bạn cần tạo một bảng trung gian "PHAN_CONG". Bảng "PHAN_CONG" cần có những trường khóa nào để liên kết với hai bảng trên?
- A. Chi Ma_du_an.
- B. Chi Ma_nhan_vien.
- C. Ma_du_an va Ma_nhan_vien (dong vai tro khoa ngoai va cung nhau tao khoa chinh).
- D. Mot truong khoa chinh moi hoan toan khong lien quan.
Câu 23: Trong bảng "SINH_VIEN" (Ma_sinh_vien, Ho_ten, CCCD, Email, So_dien_thoai), giả sử "Ma_sinh_vien" là khóa chính. Trường "CCCD" (Căn cước công dân) cũng là duy nhất cho mỗi sinh viên. Trường "CCCD" trong trường hợp này có thể được xem là gì?
- A. Khóa ngoại (Foreign Key)
- B. Khóa chính (Primary Key) thay thế
- C. Không có vai trò đặc biệt
- D. Một khóa ứng viên (Candidate Key)
Câu 24: Khi thiết kế CSDL, việc phân rã dữ liệu thành nhiều bảng nhỏ có mối quan hệ với nhau (thay vì lưu tất cả vào một bảng lớn) mang lại lợi ích gì?
- A. Giảm thiểu sự lặp lại dữ liệu và bất thường khi cập nhật/xóa.
- B. Làm cho việc tìm kiếm dữ liệu phức tạp hơn.
- C. Yêu cầu lưu trữ nhiều dữ liệu hơn.
- D. Ngăn cản việc tạo mối quan hệ giữa các thông tin.
Câu 25: Bảng "MON_HOC" (Ma_mon_hoc, Ten_mon_hoc, So_tin_chi). Bảng "GIANG_VIEN" (Ma_giang_vien, Ten_giang_vien, Email). Một giảng viên có thể dạy nhiều môn, một môn có thể do nhiều giảng viên dạy. Để mô hình hóa mối quan hệ này trong CSDL, cần tạo thêm bảng nào và chứa các trường khóa nào?
- A. Bảng "GIANG_VIEN_MON_HOC" chứa Ma_giang_vien.
- B. Bảng "GIANG_VIEN_MON_HOC" chứa Ma_mon_hoc.
- C. Bảng "PHAN_CONG_GIANG_DAY" chứa Ma_giang_vien va Ma_mon_hoc.
- D. Khong can tao them bang, chi can them truong vao hai bang da co.
Câu 26: Giả sử trong bảng "SAN_PHAM" có trường "Ma_loai_san_pham" là khóa ngoại tham chiếu đến bảng "LOAI_SAN_PHAM". Nếu bạn cố gắng xóa một bản ghi trong bảng "LOAI_SAN_PHAM" mà loại sản phẩm đó vẫn còn sản phẩm liên quan trong bảng "SAN_PHAM", điều gì có khả năng xảy ra nếu ràng buộc toàn vẹn tham chiếu được thiết lập đúng?
- A. Bản ghi trong bảng "SAN_PHAM" cũng sẽ tự động bị xóa.
- B. Hệ quản trị CSDL sẽ ngăn chặn thao tác xóa này để duy trì tính toàn vẹn.
- C. Trường "Ma_loai_san_pham" trong bảng "SAN_PHAM" sẽ tự động chuyển thành NULL.
- D. Thao tác xóa sẽ thành công mà không có cảnh báo.
Câu 27: Khi thiết kế cấu trúc bảng, việc đặt tên cho bảng và các trường nên tuân theo nguyên tắc nào để dễ quản lý và hiểu?
- A. Đặt tên thật dài và chi tiết.
- B. Sử dụng các ký tự đặc biệt để làm nổi bật.
- C. Đặt tên ngắn gọn, dễ hiểu, không dấu, không khoảng trắng, phản ánh đúng nội dung.
- D. Đặt tên ngẫu nhiên để tăng tính bảo mật.
Câu 28: Bạn có bảng "NHAN_VIEN" (Ma_NV, Ten_NV, Luong) và bảng "PHONG_BAN" (Ma_PB, Ten_PB). Mỗi nhân viên thuộc về một phòng ban, một phòng ban có nhiều nhân viên. Để thể hiện mối quan hệ này (1-nhiều), bạn nên thêm trường khóa ngoại vào bảng nào?
- A. Them truong Ma_PB vao bang NHAN_VIEN.
- B. Them truong Ma_NV vao bang PHONG_BAN.
- C. Tao mot bang trung gian moi.
- D. Khong can them truong nao.
Câu 29: Khi xác định kiểu dữ liệu cho trường "Ngay_sinh" trong bảng "HOC_SINH", kiểu dữ liệu Date (Ngày) là phù hợp nhất. Tại sao không nên dùng kiểu Text (Văn bản) để lưu ngày tháng năm sinh?
- A. Kiểu Text tốn nhiều bộ nhớ hơn.
- B. Kiểu Text không thể lưu trữ số.
- C. Kiểu Text chỉ lưu được một định dạng ngày duy nhất.
- D. Khó khăn trong việc sắp xếp, so sánh, tính toán (như tuổi) và dễ sai sót định dạng nhập liệu.
Câu 30: Bạn đang xem xét cấu trúc bảng "THIET_BI" (Ma_TB, Ten_TB, Ngay_mua, Tinh_trang). Trường nào có khả năng được chọn làm khóa chính?
- A. Ma_TB
- B. Ten_TB
- C. Ngay_mua
- D. Tinh_trang