12+ Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 20: Thực Hành Tạo Lập Các Bảng Có Khóa Ngoài

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 01

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 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 mô hình cơ sở dữ liệu quan hệ, Khóa Chính (Primary Key - PK) đóng vai trò quan trọng nhất trong việc gì?

  • A. Định danh duy nhất mỗi bản ghi trong bảng
  • B. Thiết lập mối quan hệ với các bảng khác
  • C. Ngăn chặn giá trị NULL trong mọi trường
  • D. Sắp xếp dữ liệu theo thứ tự nhất định

Câu 2: Khóa Ngoài (Foreign Key - FK) trong một bảng có chức năng chính là gì?

  • A. Tăng tốc độ truy vấn dữ liệu
  • B. Đảm bảo tính duy nhất cho bản ghi trong bảng chứa FK
  • C. Thiết lập và duy trì mối quan hệ giữa hai bảng
  • D. Tự động tạo giá trị cho trường

Câu 3: Xét hai bảng `LopHoc` (có trường `MaLop` là PK) và `HocSinh` (có trường `MaHS` là PK). Mỗi học sinh học ở một lớp duy nhất. Để thể hiện mối quan hệ này, bạn cần thêm trường nào vào bảng nào và biến nó thành loại khóa gì?

  • A. Thêm `MaHS` vào bảng `LopHoc`, làm FK
  • B. Thêm `MaLop` vào bảng `HocSinh`, làm FK
  • C. Thêm cả `MaLop` và `MaHS` vào một bảng mới, làm PK ghép
  • D. Thêm `MaLop` vào bảng `LopHoc`, làm FK

Câu 4: Khóa Ngoài (FK) luôn phải tham chiếu đến loại khóa nào ở bảng được tham chiếu?

  • A. Khóa Chính (Primary Key)
  • B. Khóa Duy nhất (Unique Key) bất kỳ
  • C. Một trường có kiểu dữ liệu INT
  • D. Bất kỳ trường nào có tên giống nhau

Câu 5: Khi khai báo một Khóa Ngoài (FK), điều kiện nào sau đây là BẮT BUỘC phải thỏa mãn giữa trường FK và trường được tham chiếu (ở bảng khác)?

  • A. Tên trường phải giống nhau
  • B. Trường FK phải có thuộc tính AUTO_INCREMENT
  • C. Trường FK không được phép chứa giá trị NULL
  • D. Kiểu dữ liệu của trường FK phải tương thích với kiểu dữ liệu của trường PK được tham chiếu

Câu 6: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo bởi Khóa Ngoài, có ý nghĩa gì?

  • A. Đảm bảo mọi giá trị trong trường FK đều tương ứng với một giá trị PK tồn tại ở bảng được tham chiếu
  • B. Đảm bảo các trường PK không chứa giá trị NULL
  • C. Ngăn chặn việc thêm các bản ghi trùng lặp vào bảng
  • D. Tự động cập nhật dữ liệu khi có thay đổi

Câu 7: Giả sử bạn có bảng `DonHang` (PK: `SoDonHang`) và bảng `ChiTietDonHang` (PK: `MaChiTiet`). Mỗi chi tiết đơn hàng thuộc về một đơn hàng duy nhất. Để liên kết hai bảng này, bạn sẽ đặt Khóa Ngoài ở bảng nào và nó tham chiếu đến bảng nào?

  • A. Đặt FK ở bảng `DonHang` tham chiếu đến `ChiTietDonHang`
  • B. Đặt FK ở cả hai bảng `DonHang` và `ChiTietDonHang`
  • C. Đặt FK ở bảng `ChiTietDonHang` tham chiếu đến `DonHang`
  • D. Không cần FK vì PK đã đủ để liên kết

Câu 8: Khi bạn cố gắng thêm một bản ghi mới vào bảng chứa Khóa Ngoài (ví dụ: thêm học sinh vào bảng `HocSinh`) mà giá trị của trường FK (ví dụ: `MaLop`) không tồn tại trong Khóa Chính (`MaLop`) của bảng được tham chiếu (bảng `LopHoc`), hệ quản trị cơ sở dữ liệu (DBMS) sẽ làm gì theo mặc định?

  • A. Tự động thêm giá trị đó vào bảng được tham chiếu
  • B. Từ chối thêm bản ghi mới và báo lỗi
  • C. Chuyển giá trị đó thành NULL
  • D. Thêm bản ghi nhưng đánh dấu là không hợp lệ

Câu 9: Xét hai bảng `TacGia` (PK: `MaTG`) và `Sach` (PK: `MaSach`). Một cuốn sách có thể được viết bởi nhiều tác giả, và một tác giả có thể viết nhiều sách. Loại mối quan hệ này là gì và cần thêm bảng nào để thể hiện nó trong cơ sở dữ liệu quan hệ?

  • A. Một-Nhiều; Thêm trường `MaTG` vào bảng `Sach` làm FK
  • B. Một-Một; Thêm trường `MaTG` vào bảng `Sach` làm FK
  • C. Nhiều-Một; Thêm trường `MaSach` vào bảng `TacGia` làm FK
  • D. Nhiều-Nhiều; Thêm một bảng trung gian (ví dụ: `Sach_TacGia`) chứa FKs tham chiếu đến `TacGia` và `Sach`

Câu 10: Trong trường hợp mối quan hệ Nhiều-Nhiều giữa `TacGia` và `Sach` (như câu 9), bảng trung gian `Sach_TacGia` sẽ có cấu trúc cơ bản như thế nào để thể hiện mối quan hệ?

  • A. Chứa trường `MaTG` (FK tham chiếu `TacGia`) và `MaSach` (FK tham chiếu `Sach`)
  • B. Chỉ chứa trường `MaTG` (FK tham chiếu `TacGia`)
  • C. Chỉ chứa trường `MaSach` (FK tham chiếu `Sach`)
  • D. Chứa một trường PK mới và không cần FK

Câu 11: Khi bạn xóa một bản ghi từ bảng được tham chiếu (bảng chứa PK), nếu có các bản ghi liên quan trong bảng chứa FK, hành động mặc định của hầu hết các DBMS là gì để bảo vệ tính toàn vẹn dữ liệu?

  • A. Tự động xóa các bản ghi liên quan trong bảng FK (CASCADE)
  • B. Ngăn chặn thao tác xóa và báo lỗi
  • C. Đặt giá trị FK trong các bản ghi liên quan thành NULL (SET NULL)
  • D. Đặt giá trị FK trong các bản ghi liên quan thành giá trị mặc định (SET DEFAULT)

Câu 12: Nếu bạn muốn khi xóa một bản ghi từ bảng `LopHoc` (PK: `MaLop`), tất cả các học sinh thuộc lớp đó trong bảng `HocSinh` (FK: `MaLop`) cũng bị xóa theo, bạn cần thiết lập tùy chọn nào cho ràng buộc Khóa Ngoài `MaLop` trong bảng `HocSinh`?

  • A. ON DELETE CASCADE
  • B. ON DELETE SET NULL
  • C. ON DELETE RESTRICT
  • D. ON DELETE NO ACTION

Câu 13: Trong ngữ cảnh của Khóa Ngoài, bảng chứa Khóa Ngoài được gọi là gì?

  • A. Bảng chính
  • B. Bảng gốc
  • C. Bảng được tham chiếu
  • D. Bảng tham chiếu

Câu 14: Trong ngữ cảnh của Khóa Ngoài, bảng chứa Khóa Chính mà Khóa Ngoài tham chiếu tới được gọi là gì?

  • A. Bảng được tham chiếu
  • B. Bảng con
  • C. Bảng tham chiếu
  • D. Bảng phụ

Câu 15: Một trường được chọn làm Khóa Ngoài có BẮT BUỘC phải có cùng tên với Khóa Chính mà nó tham chiếu ở bảng khác không?

  • A. Có, bắt buộc phải giống nhau để hệ thống nhận diện
  • B. Không, tên có thể khác nhau nhưng kiểu dữ liệu phải tương thích
  • C. Chỉ bắt buộc giống nhau nếu cả hai đều là kiểu INT
  • D. Không, nhưng phải có cùng thuộc tính AUTO_INCREMENT

Câu 16: Bạn đang thiết kế cơ sở dữ liệu cho một thư viện với hai bảng: `Sach` (PK: `MaSach`) và `NhaXuatBan` (PK: `MaNXB`). Mỗi cuốn sách do một nhà xuất bản duy nhất phát hành. Bạn sẽ thêm FK như thế nào?

  • A. Thêm trường `MaSach` vào bảng `NhaXuatBan` làm FK
  • B. Thêm trường `MaNXB` vào bảng `NhaXuatBan` làm FK
  • C. Thêm trường `MaNXB` vào bảng `Sach` làm FK
  • D. Thêm một bảng trung gian `Sach_NXB`

Câu 17: Khóa Ngoài có thể chứa giá trị NULL không? Tại sao?

  • A. Có, nếu trường FK không được khai báo là NOT NULL
  • B. Không, vì FK phải tham chiếu đến PK, và PK không được NULL
  • C. Có, nhưng chỉ khi bảng được tham chiếu trống rỗng
  • D. Không, vì nó vi phạm tính toàn vẹn tham chiếu

Câu 18: Khi cập nhật giá trị của Khóa Chính trong bảng được tham chiếu (bảng cha), nếu có các Khóa Ngoài tương ứng trong bảng tham chiếu (bảng con), tùy chọn `ON UPDATE CASCADE` cho FK sẽ gây ra hành động gì?

  • A. Ngăn chặn thao tác cập nhật và báo lỗi
  • B. Tự động cập nhật giá trị FK tương ứng trong bảng con theo giá trị PK mới
  • C. Đặt giá trị FK tương ứng trong bảng con thành NULL
  • D. Xóa các bản ghi liên quan trong bảng con

Câu 19: Xét hai bảng `QuocGia` (PK: `MaQG`, tên: `TenQG`) và `ThanhPho` (PK: `MaTP`, tên: `TenTP`). Mỗi thành phố thuộc về một quốc gia. Để thêm ràng buộc FK thể hiện mối quan hệ này, bạn sẽ khai báo FK trên trường nào và tham chiếu đến trường nào?

  • A. Khai báo FK trên trường `MaQG` (hoặc tên khác tương ứng) trong bảng `ThanhPho`, tham chiếu đến `MaQG` trong bảng `QuocGia`.
  • B. Khai báo FK trên trường `MaTP` trong bảng `QuocGia`, tham chiếu đến `MaTP` trong bảng `ThanhPho`.
  • C. Khai báo FK trên trường `TenQG` trong bảng `ThanhPho`, tham chiếu đến `TenQG` trong bảng `QuocGia`.
  • D. Khai báo FK trên trường `MaQG` trong bảng `QuocGia`, tham chiếu đến `MaQG` trong bảng `ThanhPho`.

Câu 20: Mục đích của việc sử dụng Khóa Ngoài trong thiết kế cơ sở dữ liệu là gì?

  • A. Giảm dung lượng lưu trữ dữ liệu
  • B. Mã hóa thông tin nhạy cảm
  • C. Duy trì tính nhất quán và toàn vẹn dữ liệu giữa các bảng
  • D. Tạo giao diện người dùng trực quan hơn

Câu 21: Một bảng có thể có nhiều Khóa Ngoài không? Nếu có, cho ví dụ.

  • A. Có, ví dụ bảng `DonHang` có thể có FK `MaKhachHang` và FK `MaNhanVien`.
  • B. Không, mỗi bảng chỉ được có tối đa một Khóa Ngoài.
  • C. Có, nhưng tất cả FK phải tham chiếu đến cùng một bảng.
  • D. Không, chỉ có thể có một Khóa Chính và một Khóa Ngoài.

Câu 22: Xét bảng `SanPham` (PK: `MaSP`) và bảng `LoaiSanPham` (PK: `MaLoai`). Mỗi sản phẩm thuộc về một loại sản phẩm. Nếu bạn thêm trường `MaLoai` vào bảng `SanPham` làm FK tham chiếu đến bảng `LoaiSanPham`, điều này thể hiện mối quan hệ gì?

  • A. Mối quan hệ Một-Một
  • B. Mối quan hệ Một-Nhiều
  • C. Mối quan hệ Nhiều-Một
  • D. Mối quan hệ Nhiều-Nhiều

Câu 23: Khi tạo bảng trong môi trường thực hành, sau khi định nghĩa các trường và loại khóa (PK, FK), thao tác cuối cùng để hoàn tất việc tạo bảng là gì?

  • A. Đóng cửa sổ làm việc
  • B. Nhập dữ liệu mẫu
  • C. Chạy câu lệnh SQL SELECT
  • D. Lưu cấu trúc bảng

Câu 24: Trong thiết kế cơ sở dữ liệu, tại sao việc xác định đúng Khóa Chính cho mỗi bảng là bước quan trọng trước khi thiết lập Khóa Ngoài?

  • A. Vì Khóa Ngoài luôn tham chiếu đến Khóa Chính của bảng khác
  • B. Vì Khóa Chính quy định kiểu dữ liệu của Khóa Ngoài
  • C. Vì Khóa Chính tự động tạo giá trị cho Khóa Ngoài
  • D. Vì Khóa Chính quyết định số lượng Khóa Ngoài có thể có

Câu 25: Giả sử bạn có bảng `NhanVien` (PK: `MaNV`) và bảng `PhongBan` (PK: `MaPB`). Mỗi nhân viên thuộc về một phòng ban duy nhất, nhưng không phải phòng ban nào cũng có nhân viên. Để mô hình hóa mối quan hệ này, bạn sẽ đặt FK ở đâu và có cho phép giá trị NULL trên trường FK đó không?

  • A. Đặt FK ở bảng `PhongBan`, không cho phép NULL
  • B. Đặt FK ở bảng `PhongBan`, cho phép NULL
  • C. Đặt FK ở bảng `NhanVien`, có thể cho phép NULL (tùy vào yêu cầu nghiệp vụ, ví dụ nhân viên mới chưa vào phòng ban)
  • D. Đặt FK ở bảng `NhanVien`, không cho phép NULL

Câu 26: Trong cú pháp SQL (hoặc khái niệm chung khi khai báo FK), từ khóa nào được sử dụng để chỉ định bảng và trường Khóa Chính mà Khóa Ngoài đang tham chiếu tới?

  • A. LINK TO
  • B. REFERENCES
  • C. FOREIGN KEY TO
  • D. POINTS TO

Câu 27: Bạn có bảng `SanPham` (PK: `MaSP`) và bảng `Kho` (PK: `MaKho`). Một sản phẩm có thể được lưu ở nhiều kho, và một kho chứa nhiều sản phẩm. Để mô hình hóa mối quan hệ này, bạn cần tạo bảng trung gian `TonKho`. PK của bảng `TonKho` có thể là gì?

  • A. Một trường mới có thuộc tính AUTO_INCREMENT
  • B. Chỉ trường `MaSP`
  • C. Chỉ trường `MaKho`
  • D. Sự kết hợp của trường `MaSP` và trường `MaKho`

Câu 28: Điều nào sau đây KHÔNG phải là lợi ích chính của việc sử dụng Khóa Ngoài trong thiết kế cơ sở dữ liệu?

  • A. Ngăn chặn các giá trị FK không hợp lệ (không tồn tại ở bảng cha)
  • B. Duy trì sự liên kết logic giữa các bản ghi ở các bảng khác nhau
  • C. Tự động tăng tốc độ thực hiện các câu lệnh SELECT
  • D. Giúp dễ dàng truy vấn dữ liệu kết hợp từ nhiều bảng thông qua liên kết

Câu 29: Khi bạn cố gắng cập nhật giá trị của trường Khóa Ngoài trong bảng con, điều gì sẽ xảy ra nếu giá trị mới bạn nhập vào không tồn tại trong Khóa Chính của bảng cha?

  • A. Hệ quản trị cơ sở dữ liệu sẽ từ chối thao tác cập nhật và báo lỗi
  • B. Giá trị FK sẽ được cập nhật thành NULL
  • C. Giá trị FK sẽ được cập nhật nhưng đánh dấu là không hợp lệ
  • D. Hệ thống sẽ tự động thêm giá trị mới vào bảng cha

Câu 30: Việc tạo lập các bảng có khóa ngoài trong cơ sở dữ liệu quan hệ nhằm mục đích chính là gì?

  • A. Làm cho cơ sở dữ liệu trông phức tạp hơn
  • B. Bắt buộc người dùng phải nhập đầy đủ thông tin vào mọi trường
  • C. Giảm số lượng bảng trong cơ sở dữ liệu
  • D. Tổ chức dữ liệu theo cấu trúc quan hệ, đảm bảo tính toàn vẹn và tránh dư thừa

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, Khóa Chính (Primary Key - PK) đóng vai trò quan trọng nhất trong việc gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 2: Khóa Ngoài (Foreign Key - FK) trong một bảng có chức năng chính là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 3: Xét hai bảng `LopHoc` (có trường `MaLop` là PK) và `HocSinh` (có trường `MaHS` là PK). Mỗi học sinh học ở một lớp duy nhất. Để thể hiện mối quan hệ này, bạn cần thêm trường nào vào bảng nào và biến nó thành loại khóa gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 4: Khóa Ngoài (FK) luôn phải tham chiếu đến loại khóa nào ở bảng được tham chiếu?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 5: Khi khai báo một Khóa Ngoài (FK), điều kiện nào sau đây là BẮT BUỘC phải thỏa mãn giữa trường FK và trường được tham chiếu (ở bảng khác)?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 6: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo bởi Khóa Ngoài, có ý nghĩa gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 7: Giả sử bạn có bảng `DonHang` (PK: `SoDonHang`) và bảng `ChiTietDonHang` (PK: `MaChiTiet`). Mỗi chi tiết đơn hàng thuộc về một đơn hàng duy nhất. Để liên kết hai bảng này, bạn sẽ đặt Khóa Ngoài ở bảng nào và nó tham chiếu đến bảng nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 8: Khi bạn cố gắng thêm một bản ghi mới vào bảng chứa Khóa Ngoài (ví dụ: thêm học sinh vào bảng `HocSinh`) mà giá trị của trường FK (ví dụ: `MaLop`) không tồn tại trong Khóa Chính (`MaLop`) của bảng được tham chiếu (bảng `LopHoc`), hệ quản trị cơ sở dữ liệu (DBMS) sẽ làm gì theo mặc định?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 9: Xét hai bảng `TacGia` (PK: `MaTG`) và `Sach` (PK: `MaSach`). Một cuốn sách có thể được viết bởi nhiều tác giả, và một tác giả có thể viết nhiều sách. Loại mối quan hệ này là gì và cần thêm bảng nào để thể hiện nó trong cơ sở dữ liệu quan hệ?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 10: Trong trường hợp mối quan hệ Nhiều-Nhiều giữa `TacGia` và `Sach` (như câu 9), bảng trung gian `Sach_TacGia` sẽ có cấu trúc cơ bản như thế nào để thể hiện mối quan hệ?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 11: Khi bạn xóa một bản ghi từ bảng được tham chiếu (bảng chứa PK), nếu có các bản ghi liên quan trong bảng chứa FK, hành động mặc định của hầu hết các DBMS là gì để bảo vệ tính toàn vẹn dữ liệu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 12: Nếu bạn muốn khi xóa một bản ghi từ bảng `LopHoc` (PK: `MaLop`), tất cả các học sinh thuộc lớp đó trong bảng `HocSinh` (FK: `MaLop`) cũng bị xóa theo, bạn cần thiết lập tùy chọn nào cho ràng buộc Khóa Ngoài `MaLop` trong bảng `HocSinh`?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 13: Trong ngữ cảnh của Khóa Ngoài, bảng chứa Khóa Ngoài được gọi là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 14: Trong ngữ cảnh của Khóa Ngoài, bảng chứa Khóa Chính mà Khóa Ngoài tham chiếu tới được gọi là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 15: Một trường được chọn làm Khóa Ngoài có BẮT BUỘC phải có cùng tên với Khóa Chính mà nó tham chiếu ở bảng khác không?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 16: Bạn đang thiết kế cơ sở dữ liệu cho một thư viện với hai bảng: `Sach` (PK: `MaSach`) và `NhaXuatBan` (PK: `MaNXB`). Mỗi cuốn sách do một nhà xuất bản duy nhất phát hành. Bạn sẽ thêm FK như thế nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 17: Khóa Ngoài có thể chứa giá trị NULL không? Tại sao?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 18: Khi cập nhật giá trị của Khóa Chính trong bảng được tham chiếu (bảng cha), nếu có các Khóa Ngoài tương ứng trong bảng tham chiếu (bảng con), tùy chọn `ON UPDATE CASCADE` cho FK sẽ gây ra hành động gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 19: Xét hai bảng `QuocGia` (PK: `MaQG`, tên: `TenQG`) và `ThanhPho` (PK: `MaTP`, tên: `TenTP`). Mỗi thành phố thuộc về một quốc gia. Để thêm ràng buộc FK thể hiện mối quan hệ này, bạn sẽ khai báo FK trên trường nào và tham chiếu đến trường nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 20: Mục đích của việc sử dụng Khóa Ngoài trong thiết kế cơ sở dữ liệu là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 21: Một bảng có thể có nhiều Khóa Ngoài không? Nếu có, cho ví dụ.

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 22: Xét bảng `SanPham` (PK: `MaSP`) và bảng `LoaiSanPham` (PK: `MaLoai`). Mỗi sản phẩm thuộc về một loại sản phẩm. Nếu bạn thêm trường `MaLoai` vào bảng `SanPham` làm FK tham chiếu đến bảng `LoaiSanPham`, điều này thể hiện mối quan hệ gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 23: Khi tạo bảng trong môi trường thực hành, sau khi định nghĩa các trường và loại khóa (PK, FK), thao tác cuối cùng để hoàn tất việc tạo bảng là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 24: Trong thiết kế cơ sở dữ liệu, tại sao việc xác định đúng Khóa Chính cho mỗi bảng là bước quan trọng trước khi thiết lập Khóa Ngoài?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 25: Giả sử bạn có bảng `NhanVien` (PK: `MaNV`) và bảng `PhongBan` (PK: `MaPB`). Mỗi nhân viên thuộc về một phòng ban duy nhất, nhưng không phải phòng ban nào cũng có nhân viên. Để mô hình hóa mối quan hệ này, bạn sẽ đặt FK ở đâu và có cho phép giá trị NULL trên trường FK đó không?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 26: Trong cú pháp SQL (hoặc khái niệm chung khi khai báo FK), từ khóa nào được sử dụng để chỉ định bảng và trường Khóa Chính mà Khóa Ngoài đang tham chiếu tới?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 27: Bạn có bảng `SanPham` (PK: `MaSP`) và bảng `Kho` (PK: `MaKho`). Một sản phẩm có thể được lưu ở nhiều kho, và một kho chứa nhiều sản phẩm. Để mô hình hóa mối quan hệ này, bạn cần tạo bảng trung gian `TonKho`. PK của bảng `TonKho` có thể là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 28: Điều nào sau đây KHÔNG phải là lợi ích chính của việc sử dụng Khóa Ngoài trong thiết kế cơ sở dữ liệu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 29: Khi bạn cố gắng cập nhật giá trị của trường Khóa Ngoài trong bảng con, điều gì sẽ xảy ra nếu giá trị mới bạn nhập vào không tồn tại trong Khóa Chính của bảng cha?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 01

Câu 30: Việc tạo lập các bảng có khóa ngoài trong cơ sở dữ liệu quan hệ nhằm mục đích chính là gì?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 02

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 02 đượ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 mô hình cơ sở dữ liệu quan hệ, Khóa chính (Primary Key - PK) của một bảng có vai trò cốt lõi nào sau đây?

  • A. Thiết lập mối quan hệ với bảng khác.
  • B. Đảm bảo mỗi bản ghi trong bảng có một định danh duy nhất.
  • C. Ngăn chặn giá trị NULL trong bất kỳ trường nào.
  • D. Tăng tốc độ truy vấn dữ liệu.

Câu 2: Khi thiết kế cơ sở dữ liệu quản lý sách, bạn có bảng `Sach` (Mã sách, Tên sách, Tác giả, Năm xuất bản) và bảng `TacGia` (Mã tác giả, Tên tác giả, Ngày sinh). Để thể hiện mối quan hệ "một tác giả viết nhiều sách", bạn cần thêm trường nào vào bảng `Sach` và đặt ràng buộc gì?

  • A. Thêm trường `TenTacGia` vào bảng `Sach` và đặt làm Khóa ngoài.
  • B. Thêm trường `MaSach` vào bảng `TacGia` và đặt làm Khóa ngoài.
  • C. Thêm trường `MaTacGia` vào bảng `Sach` và đặt làm Khóa ngoài tham chiếu đến bảng `TacGia`.
  • D. Thêm trường `NamXuatBan` vào bảng `TacGia` và đặt làm Khóa ngoài.

Câu 3: Ràng buộc Khóa ngoài (Foreign Key - FK) trong cơ sở dữ liệu quan hệ chủ yếu nhằm mục đích gì?

  • A. Duy trì tính toàn vẹn tham chiếu giữa các bảng.
  • B. Đảm bảo mỗi bản ghi là duy nhất trong bảng.
  • C. Tự động điền giá trị cho các trường.
  • D. Tăng tốc độ tìm kiếm dữ liệu trong một bảng duy nhất.

Câu 4: Khi khai báo Khóa ngoài `idNhacsi` trong bảng `bannhac` tham chiếu đến bảng `nhacsi`, điều kiện nào sau đây bắt buộc phải đúng?

  • A. Trường `idNhacsi` trong bảng `bannhac` phải có giá trị NULL.
  • B. Trường `idNhacsi` trong bảng `bannhac` phải là Khóa chính.
  • C. Bảng `nhacsi` không được có Khóa chính.
  • D. Trường `idNhacsi` trong bảng `nhacsi` phải là Khóa chính hoặc có ràng buộc UNIQUE.

Câu 5: Bạn có bảng `SanPham` (MaSP PK, TenSP, Gia) và bảng `ChiTietDonHang` (MaCTDH PK, MaDH, MaSP FK, SoLuong). Nếu bạn cố gắng thêm một bản ghi vào bảng `ChiTietDonHang` với `MaSP` = "SP999" nhưng trong bảng `SanPham` không tồn tại `MaSP` = "SP999", điều gì sẽ xảy ra (với ràng buộc Khóa ngoài được thiết lập đúng)?

  • A. Bản ghi sẽ được thêm vào bình thường.
  • B. Hệ quản trị CSDL sẽ báo lỗi và không cho phép thêm bản ghi.
  • C. Giá trị `MaSP` trong bản ghi mới sẽ tự động được thay bằng NULL.
  • D. Bản ghi tương ứng trong bảng `SanPham` sẽ được tạo tự động.

Câu 6: Điểm khác biệt cơ bản nhất giữa Khóa chính (Primary Key) và Khóa chống trùng lặp (UNIQUE) trong một bảng là gì?

  • A. Khóa chính không cho phép giá trị NULL, trong khi Khóa UNIQUE có thể cho phép một giá trị NULL.
  • B. Khóa chính cho phép giá trị trùng lặp, còn Khóa UNIQUE thì không.
  • C. Mỗi bảng chỉ có thể có Khóa UNIQUE, không thể có Khóa chính.
  • D. Khóa chính chỉ áp dụng cho trường số, Khóa UNIQUE áp dụng cho trường chuỗi.

Câu 7: Trong quá trình tạo bảng bằng công cụ đồ họa (GUI) trong một số hệ quản trị CSDL, thuộc tính `AUTO_INCREMENT` (hoặc tương đương) thường được áp dụng cho trường nào và với mục đích gì?

  • A. Trường Khóa ngoài, để tự động liên kết với bảng khác.
  • B. Bất kỳ trường nào, để tự động tăng giá trị theo thứ tự bảng chữ cái.
  • C. Trường Khóa chính kiểu số, để tự động tạo giá trị duy nhất cho mỗi bản ghi mới.
  • D. Trường kiểu ngày tháng, để tự động điền ngày hiện tại.

Câu 8: Giả sử bạn có bảng `KhachHang` (MaKH PK, TenKH) và bảng `DonHang` (MaDH PK, NgayDH, MaKH FK). Nếu bạn xóa một bản ghi Khách hàng khỏi bảng `KhachHang` mà Khách hàng đó có các đơn hàng liên quan trong bảng `DonHang` (với thiết lập Khóa ngoài mặc định ON DELETE RESTRICT), điều gì sẽ xảy ra?

  • A. Các đơn hàng liên quan trong bảng `DonHang` cũng sẽ bị xóa tự động.
  • B. Giá trị `MaKH` trong các đơn hàng liên quan sẽ được đặt thành NULL.
  • C. Bản ghi Khách hàng vẫn bị xóa, nhưng các đơn hàng liên quan bị lỗi.
  • D. Hệ quản trị CSDL sẽ báo lỗi và không cho phép xóa bản ghi Khách hàng.

Câu 9: Kiểu dữ liệu của một trường được chọn làm Khóa ngoài (FK) trong bảng con phải như thế nào so với kiểu dữ liệu của trường Khóa chính (PK) mà nó tham chiếu trong bảng cha?

  • A. Phải khác hoàn toàn để tránh nhầm lẫn.
  • B. Phải giống hoặc tương thích về kiểu dữ liệu.
  • C. Có thể là bất kỳ kiểu dữ liệu nào.
  • D. Phải nhỏ hơn kích thước của kiểu dữ liệu Khóa chính.

Câu 10: Trong ngữ cảnh thiết kế cơ sở dữ liệu, việc sử dụng Khóa ngoài mang lại lợi ích chính nào cho việc quản lý dữ liệu?

  • A. Giúp duy trì sự nhất quán và chính xác của dữ liệu giữa các bảng có liên quan.
  • B. Giảm dung lượng lưu trữ của cơ sở dữ liệu.
  • C. Cho phép truy cập dữ liệu từ xa dễ dàng hơn.
  • D. Loại bỏ hoàn toàn nhu cầu về Khóa chính.

Câu 11: Bạn đang thiết kế bảng `SinhVien` (MaSV PK, TenSV, MaLop) và bảng `LopHoc` (MaLop PK, TenLop). Để thể hiện mỗi sinh viên thuộc về một lớp học, bạn đặt `MaLop` trong bảng `SinhVien` làm Khóa ngoài tham chiếu đến `MaLop` trong bảng `LopHoc`. Điều này có ý nghĩa gì về mặt dữ liệu?

  • A. Một lớp học chỉ có thể có một sinh viên.
  • B. Mỗi sinh viên có thể thuộc về nhiều lớp học.
  • C. Trường `MaLop` trong bảng `SinhVien` có thể chứa bất kỳ giá trị nào.
  • D. Mỗi giá trị `MaLop` trong bảng `SinhVien` phải tồn tại trong bảng `LopHoc`.

Câu 12: Khi sử dụng công cụ đồ họa để tạo Khóa ngoài, bạn thường cần chỉ định những thông tin nào sau đây?

  • A. Tên trường Khóa ngoài, bảng tham chiếu, và trường Khóa chính/UNIQUE trong bảng tham chiếu.
  • B. Chỉ cần tên trường Khóa ngoài và kiểu dữ liệu của nó.
  • C. Tên trường Khóa ngoài và số lượng bản ghi trong bảng tham chiếu.
  • D. Tên trường Khóa ngoài và tên của tất cả các trường trong bảng tham chiếu.

Câu 13: Trong thiết kế cơ sở dữ liệu, tại sao việc sử dụng Khóa chính tự tăng (AUTO_INCREMENT) cho các trường định danh (ID) lại phổ biến?

  • A. Giúp giảm đáng kể kích thước của cơ sở dữ liệu.
  • B. Tự động tạo ra các giá trị duy nhất cho Khóa chính mà không cần nhập thủ công, giảm thiểu lỗi.
  • C. Cho phép Khóa chính chứa giá trị NULL.
  • D. Chỉ áp dụng cho các trường kiểu chuỗi (VARCHAR).

Câu 14: Xét hai bảng `PhongBan` (MaPB PK, TenPB) và `NhanVien` (MaNV PK, TenNV, MaPB FK). Nếu bạn muốn đảm bảo rằng khi xóa một Phòng ban, tất cả Nhân viên thuộc phòng ban đó sẽ tự động bị xóa theo, bạn cần thiết lập tùy chọn nào cho Khóa ngoài `MaPB` trong bảng `NhanVien`?

  • A. ON DELETE RESTRICT
  • B. ON DELETE SET NULL
  • C. ON DELETE CASCADE
  • D. ON DELETE NO ACTION

Câu 15: Trong bảng `bannhac` có trường `tenBannhac` và `idNhacsi`. Việc đặt ràng buộc UNIQUE cho cặp trường (`tenBannhac`, `idNhacsi`) có ý nghĩa gì?

  • A. Trường `tenBannhac` không được trùng lặp.
  • B. Trường `idNhacsi` không được trùng lặp.
  • C. Mỗi bản ghi phải có `tenBannhac` và `idNhacsi` khác nhau hoàn toàn.
  • D. Không có hai bản ghi nào có cùng giá trị đồng thời cho cả `tenBannhac` và `idNhacsi`.

Câu 16: Khi tạo bảng mới trong cơ sở dữ liệu, việc xác định Khóa chính cho bảng là bước quan trọng vì nó ảnh hưởng trực tiếp đến:

  • A. Cách các bản ghi được nhận diện duy nhất và cách thiết lập mối quan hệ với các bảng khác.
  • B. Thứ tự hiển thị của các trường trong bảng.
  • C. Màu sắc giao diện khi làm việc với bảng.
  • D. Dung lượng tối đa mà bảng có thể lưu trữ.

Câu 17: Bạn có bảng `LopHoc` (MaLop PK, TenLop). Khi thêm trường `MaLop` vào bảng `SinhVien` để làm Khóa ngoài tham chiếu đến `LopHoc`, kiểu dữ liệu của trường `MaLop` trong bảng `SinhVien` nên được chọn như thế nào?

  • A. Luôn là kiểu chuỗi (VARCHAR).
  • B. Luôn là kiểu số nguyên tự tăng (INT AUTO_INCREMENT).
  • C. Phải cùng kiểu dữ liệu với trường `MaLop` Khóa chính trong bảng `LopHoc`.
  • D. Có thể là bất kỳ kiểu dữ liệu nào, hệ thống sẽ tự động chuyển đổi.

Câu 18: Trong một hệ quản trị CSDL, ràng buộc toàn vẹn tham chiếu (Referential Integrity) được thực thi chủ yếu thông qua việc sử dụng cấu trúc dữ liệu nào?

  • A. Khóa chính (Primary Key).
  • B. Khóa ngoài (Foreign Key).
  • C. Khóa chống trùng lặp (UNIQUE Key).
  • D. Chỉ mục (Index).

Câu 19: Bạn có bảng `bannhac` và bảng `nhacsi`. Trường `idNhacsi` trong bảng `bannhac` là Khóa ngoài tham chiếu đến `idNhacsi` Khóa chính trong bảng `nhacsi`. Điều này đảm bảo rằng:

  • A. Mọi `idNhacsi` được ghi trong bảng `bannhac` phải tồn tại trong bảng `nhacsi`.
  • B. Mọi `idBannhac` được ghi trong bảng `bannhac` phải tồn tại trong bảng `nhacsi`.
  • C. Mỗi nhạc sĩ chỉ có thể có một ban nhạc.
  • D. Bảng `bannhac` và `nhacsi` có số lượng bản ghi bằng nhau.

Câu 20: Khi thiết kế cơ sở dữ liệu, việc thêm một trường mới vào bảng thường được thực hiện ở bước nào sau khi bảng đã được tạo?

  • A. Chỉ có thể thực hiện khi đang tạo bảng lần đầu.
  • B. Trước khi xác định Khóa chính.
  • C. Sau khi nhập tất cả dữ liệu vào bảng.
  • D. Sau khi bảng đã được tạo, thông qua các lệnh chỉnh sửa cấu trúc bảng (ALTER TABLE) hoặc công cụ GUI tương ứng.

Câu 21: Giả sử bảng `nhacsi` có các bản ghi với `idNhacsi` là 1, 2, 3. Bảng `bannhac` có Khóa ngoài `idNhacsi`. Bạn có thể thêm một bản ghi vào bảng `bannhac` với `idNhacsi` bằng giá trị nào sau đây mà không vi phạm ràng buộc Khóa ngoài (giả sử `idNhacsi` cho phép NULL)?

  • A. 4
  • B. NULL
  • C. 0 (Nếu 0 không tồn tại trong bảng `nhacsi`)
  • D. Bất kỳ giá trị nào.

Câu 22: Trong thực hành tạo lập bảng, thuộc tính `NOT NULL` cho một trường có ý nghĩa gì?

  • A. Trường đó phải có giá trị duy nhất.
  • B. Giá trị của trường sẽ tự động tăng.
  • C. Trường đó bắt buộc phải có giá trị, không được để trống (NULL).
  • D. Trường đó chỉ chấp nhận giá trị số.

Câu 23: Khi thiết kế cơ sở dữ liệu, tại sao việc xác định đúng kiểu dữ liệu cho từng trường lại quan trọng, đặc biệt là đối với các trường khóa?

  • A. Chỉ ảnh hưởng đến màu sắc hiển thị dữ liệu.
  • B. Chỉ quan trọng cho việc in báo cáo.
  • C. Chủ yếu để làm đẹp giao diện.
  • D. Đảm bảo dữ liệu được lưu trữ chính xác, hiệu quả, hỗ trợ kiểm tra ràng buộc và thiết lập mối quan hệ giữa các bảng.

Câu 24: Bạn có hai bảng `QuocGia` (MaQG PK, TenQG) và `ThanhPho` (MaTP PK, TenTP, MaQG FK). Mối quan hệ giữa hai bảng này là gì?

  • A. Một-Nhiều (One-to-Many).
  • B. Một-Một (One-to-One).
  • C. Nhiều-Nhiều (Many-to-Many).
  • D. Không có mối quan hệ nào.

Câu 25: Giả sử bạn đã thiết lập Khóa ngoài `MaKH` trong bảng `DonHang` tham chiếu đến `MaKH` trong bảng `KhachHang`. Nếu bạn cố gắng thay đổi giá trị `MaKH` của một Khách hàng trong bảng `KhachHang` mà Khách hàng đó có đơn hàng liên quan trong bảng `DonHang` (với tùy chọn ON UPDATE RESTRICT), điều gì sẽ xảy ra?

  • A. Giá trị `MaKH` trong các đơn hàng liên quan cũng sẽ được cập nhật tự động.
  • B. Hệ quản trị CSDL sẽ báo lỗi và không cho phép cập nhật giá trị `MaKH` trong bảng `KhachHang`.
  • C. Giá trị `MaKH` trong các đơn hàng liên quan sẽ được đặt thành NULL.
  • D. Việc cập nhật sẽ thành công, nhưng các đơn hàng liên quan sẽ bị lỗi tham chiếu.

Câu 26: Khi nào thì một trường trong bảng không nên được chọn làm Khóa chính (PK)?

  • A. Trường có kiểu dữ liệu số nguyên.
  • B. Trường được tự động tăng giá trị.
  • C. Trường có khả năng chứa giá trị trùng lặp hoặc giá trị có thể thay đổi thường xuyên (ví dụ: Tên, Địa chỉ).
  • D. Trường có thuộc tính NOT NULL.

Câu 27: Mục đích chính của việc lưu cấu trúc bảng sau khi đã thiết lập các trường, kiểu dữ liệu và các ràng buộc (PK, FK, UNIQUE) là gì?

  • A. Xác nhận thiết kế và tạo ra bảng vật lý trong cơ sở dữ liệu.
  • B. Nhập dữ liệu mẫu vào bảng.
  • C. Kết nối bảng với một ứng dụng bên ngoài.
  • D. Xóa tất cả dữ liệu hiện có trong bảng.

Câu 28: Trong ngữ cảnh của Bài 20, việc tạo lập các bảng có Khóa ngoài giúp xây dựng nên cấu trúc nào của cơ sở dữ liệu?

  • A. Cấu trúc cây.
  • B. Cấu trúc mạng.
  • C. Cấu trúc danh sách.
  • D. Cấu trúc quan hệ (các bảng liên kết với nhau).

Câu 29: Bạn đang thiết kế CSDL cho một thư viện. Có bảng `Sach` (MaSach PK, TenSach) và bảng `BanDoc` (MaBD PK, TenBD). Để theo dõi việc mượn sách, bạn tạo bảng `MuonSach` (MaMuon PK, MaSach FK, MaBD FK, NgayMuon, NgayTra). Việc sử dụng hai Khóa ngoài trong bảng `MuonSach` thể hiện điều gì?

  • A. Bảng `MuonSach` là bảng trung gian để liên kết mối quan hệ giữa `Sach` và `BanDoc`.
  • B. Mỗi lần mượn sách chỉ liên quan đến một cuốn sách và một bạn đọc.
  • C. Bảng `MuonSach` chỉ có thể tham chiếu đến một trong hai bảng `Sach` hoặc `BanDoc`.
  • D. Việc này là thừa và không cần thiết trong thiết kế CSDL.

Câu 30: Khi làm việc với Khóa ngoài bằng công cụ đồ họa, nếu bạn thấy một biểu tượng mũi tên nối từ một trường của bảng này đến một trường của bảng khác, biểu tượng đó thường biểu thị điều gì?

  • A. Trường đó là Khóa chính.
  • B. Trường đó có ràng buộc UNIQUE.
  • C. Trường đó là Khóa ngoài và mũi tên chỉ đến bảng/trường được tham chiếu.
  • D. Trường đó có giá trị mặc định.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, Khóa chính (Primary Key - PK) của một bảng có vai trò cốt lõi nào sau đây?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 2: Khi thiết kế cơ sở dữ liệu quản lý sách, bạn có bảng `Sach` (Mã sách, Tên sách, Tác giả, Năm xuất bản) và bảng `TacGia` (Mã tác giả, Tên tác giả, Ngày sinh). Để thể hiện mối quan hệ 'một tác giả viết nhiều sách', bạn cần thêm trường nào vào bảng `Sach` và đặt ràng buộc gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 3: Ràng buộc Khóa ngoài (Foreign Key - FK) trong cơ sở dữ liệu quan hệ chủ yếu nhằm mục đích gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 4: Khi khai báo Khóa ngoài `idNhacsi` trong bảng `bannhac` tham chiếu đến bảng `nhacsi`, điều kiện nào sau đây *bắt buộc* phải đúng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 5: Bạn có bảng `SanPham` (MaSP PK, TenSP, Gia) và bảng `ChiTietDonHang` (MaCTDH PK, MaDH, MaSP FK, SoLuong). Nếu bạn cố gắng thêm một bản ghi vào bảng `ChiTietDonHang` với `MaSP` = 'SP999' nhưng trong bảng `SanPham` không tồn tại `MaSP` = 'SP999', điều gì sẽ xảy ra (với ràng buộc Khóa ngoài được thiết lập đúng)?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 6: Điểm khác biệt cơ bản nhất giữa Khóa chính (Primary Key) và Khóa chống trùng lặp (UNIQUE) trong một bảng là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 7: Trong quá trình tạo bảng bằng công cụ đồ họa (GUI) trong một số hệ quản trị CSDL, thuộc tính `AUTO_INCREMENT` (hoặc tương đương) thường được áp dụng cho trường nào và với mục đích gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 8: Giả sử bạn có bảng `KhachHang` (MaKH PK, TenKH) và bảng `DonHang` (MaDH PK, NgayDH, MaKH FK). Nếu bạn xóa một bản ghi Khách hàng khỏi bảng `KhachHang` mà Khách hàng đó có các đơn hàng liên quan trong bảng `DonHang` (với thiết lập Khóa ngoài mặc định ON DELETE RESTRICT), điều gì sẽ xảy ra?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 9: Kiểu dữ liệu của một trường được chọn làm Khóa ngoài (FK) trong bảng con phải như thế nào so với kiểu dữ liệu của trường Khóa chính (PK) mà nó tham chiếu trong bảng cha?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 10: Trong ngữ cảnh thiết kế cơ sở dữ liệu, việc sử dụng Khóa ngoài mang lại lợi ích chính nào cho việc quản lý dữ liệu?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 11: Bạn đang thiết kế bảng `SinhVien` (MaSV PK, TenSV, MaLop) và bảng `LopHoc` (MaLop PK, TenLop). Để thể hiện mỗi sinh viên thuộc về một lớp học, bạn đặt `MaLop` trong bảng `SinhVien` làm Khóa ngoài tham chiếu đến `MaLop` trong bảng `LopHoc`. Điều này có ý nghĩa gì về mặt dữ liệu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 12: Khi sử dụng công cụ đồ họa để tạo Khóa ngoài, bạn thường cần chỉ định những thông tin nào sau đây?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 13: Trong thiết kế cơ sở dữ liệu, tại sao việc sử dụng Khóa chính tự tăng (AUTO_INCREMENT) cho các trường định danh (ID) lại phổ biến?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 14: Xét hai bảng `PhongBan` (MaPB PK, TenPB) và `NhanVien` (MaNV PK, TenNV, MaPB FK). Nếu bạn muốn đảm bảo rằng khi xóa một Phòng ban, tất cả Nhân viên thuộc phòng ban đó sẽ tự động bị xóa theo, bạn cần thiết lập tùy chọn nào cho Khóa ngoài `MaPB` trong bảng `NhanVien`?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 15: Trong bảng `bannhac` có trường `tenBannhac` và `idNhacsi`. Việc đặt ràng buộc UNIQUE cho cặp trường (`tenBannhac`, `idNhacsi`) có ý nghĩa gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 16: Khi tạo bảng mới trong cơ sở dữ liệu, việc xác định Khóa chính cho bảng là bước quan trọng vì nó ảnh hưởng trực tiếp đến:

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 17: Bạn có bảng `LopHoc` (MaLop PK, TenLop). Khi thêm trường `MaLop` vào bảng `SinhVien` để làm Khóa ngoài tham chiếu đến `LopHoc`, kiểu dữ liệu của trường `MaLop` trong bảng `SinhVien` nên được chọn như thế nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 18: Trong một hệ quản trị CSDL, ràng buộc toàn vẹn tham chiếu (Referential Integrity) được thực thi chủ yếu thông qua việc sử dụng cấu trúc dữ liệu nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 19: Bạn có bảng `bannhac` và bảng `nhacsi`. Trường `idNhacsi` trong bảng `bannhac` là Khóa ngoài tham chiếu đến `idNhacsi` Khóa chính trong bảng `nhacsi`. Điều này đảm bảo rằng:

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 20: Khi thiết kế cơ sở dữ liệu, việc thêm một trường mới vào bảng thường được thực hiện ở bước nào sau khi bảng đã được tạo?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 21: Giả sử bảng `nhacsi` có các bản ghi với `idNhacsi` là 1, 2, 3. Bảng `bannhac` có Khóa ngoài `idNhacsi`. Bạn có thể thêm một bản ghi vào bảng `bannhac` với `idNhacsi` bằng giá trị nào sau đây mà không vi phạm ràng buộc Khóa ngoài (giả sử `idNhacsi` cho phép NULL)?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 22: Trong thực hành tạo lập bảng, thuộc tính `NOT NULL` cho một trường có ý nghĩa gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 23: Khi thiết kế cơ sở dữ liệu, tại sao việc xác định đúng kiểu dữ liệu cho từng trường lại quan trọng, đặc biệt là đối với các trường khóa?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 24: Bạn có hai bảng `QuocGia` (MaQG PK, TenQG) và `ThanhPho` (MaTP PK, TenTP, MaQG FK). Mối quan hệ giữa hai bảng này là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 25: Giả sử bạn đã thiết lập Khóa ngoài `MaKH` trong bảng `DonHang` tham chiếu đến `MaKH` trong bảng `KhachHang`. Nếu bạn cố gắng thay đổi giá trị `MaKH` của một Khách hàng trong bảng `KhachHang` mà Khách hàng đó có đơn hàng liên quan trong bảng `DonHang` (với tùy chọn ON UPDATE RESTRICT), điều gì sẽ xảy ra?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 26: Khi nào thì một trường trong bảng *không* nên được chọn làm Khóa chính (PK)?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 27: Mục đích chính của việc lưu cấu trúc bảng sau khi đã thiết lập các trường, kiểu dữ liệu và các ràng buộc (PK, FK, UNIQUE) là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 28: Trong ngữ cảnh của Bài 20, việc tạo lập các bảng có Khóa ngoài giúp xây dựng nên cấu trúc nào của cơ sở dữ liệu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 29: Bạn đang thiết kế CSDL cho một thư viện. Có bảng `Sach` (MaSach PK, TenSach) và bảng `BanDoc` (MaBD PK, TenBD). Để theo dõi việc mượn sách, bạn tạo bảng `MuonSach` (MaMuon PK, MaSach FK, MaBD FK, NgayMuon, NgayTra). Việc sử dụng hai Khóa ngoài trong bảng `MuonSach` thể hiện điều gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 02

Câu 30: Khi làm việc với Khóa ngoài bằng công cụ đồ họa, nếu bạn thấy một biểu tượng mũi tên nối từ một trường của bảng này đến một trường của bảng khác, biểu tượng đó thường biểu thị điều gì?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 03

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 03 đượ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 thiết kế cơ sở dữ liệu, vai trò chính của Khóa chính (Primary Key) là gì?

  • A. Thiết lập mối quan hệ giữa các bảng.
  • B. Ngăn chặn giá trị trùng lặp trong một cột bất kỳ.
  • C. Tự động tăng giá trị cho cột.
  • D. Định danh duy nhất cho mỗi bản ghi trong bảng.

Câu 2: Khóa ngoài (Foreign Key) trong một bảng được sử dụng với mục đích chính nào?

  • A. Đảm bảo tính duy nhất của bản ghi trong bảng chứa khóa ngoài.
  • B. Tăng tốc độ truy vấn dữ liệu trong bảng.
  • C. Thiết lập mối quan hệ và duy trì tính toàn vẹn tham chiếu giữa hai bảng.
  • D. Lưu trữ dữ liệu nhị phân lớn.

Câu 3: Cho hai bảng `KhachHang (MaKH PK, TenKH)` và `DonHang (MaDH PK, NgayDH, MaKH)`. Để thiết lập mối quan hệ giữa đơn hàng và khách hàng, trường `MaKH` trong bảng `DonHang` đóng vai trò gì?

  • A. Khóa chính (Primary Key)
  • B. Khóa ngoài (Foreign Key)
  • C. Khóa duy nhất (Unique Key)
  • D. Trường thông thường không có ràng buộc đặc biệt.

Câu 4: Khi khai báo một Khóa ngoài, kiểu dữ liệu của cột Khóa ngoài phải như thế nào so với cột Khóa chính mà nó tham chiếu đến?

  • A. Phải giống hệt hoặc tương thích về kiểu dữ liệu.
  • B. Không cần giống kiểu dữ liệu, hệ quản trị cơ sở dữ liệu sẽ tự chuyển đổi.
  • C. Phải là kiểu chuỗi (VARCHAR) bất kể Khóa chính là kiểu gì.
  • D. Phải là kiểu số nguyên (INT) bất kể Khóa chính là kiểu gì.

Câu 5: Ràng buộc `UNIQUE` khác với `PRIMARY KEY` ở điểm nào?

  • A. PRIMARY KEY cho phép giá trị trùng lặp, còn UNIQUE thì không.
  • B. PRIMARY KEY có thể có nhiều trên một bảng, còn UNIQUE chỉ có một.
  • C. PRIMARY KEY không cho phép giá trị NULL, còn UNIQUE có thể cho phép giá trị NULL.
  • D. PRIMARY KEY chỉ áp dụng cho một cột, còn UNIQUE áp dụng cho nhiều cột.

Câu 6: Giả sử bạn có bảng `SanPham (MaSP PK, TenSP, MaLoaiSP)` và bảng `LoaiSanPham (MaLoaiSP PK, TenLoai)`. Trường `MaLoaiSP` trong bảng `SanPham` là Khóa ngoài tham chiếu đến bảng `LoaiSanPham`. Nếu bạn cố gắng thêm một sản phẩm mới với `MaLoaiSP` không tồn tại trong bảng `LoaiSanPham`, điều gì sẽ xảy ra?

  • A. Thao tác thêm sẽ bị từ chối do vi phạm ràng buộc toàn vẹn tham chiếu.
  • B. Bản ghi sẽ được thêm vào, nhưng trường `MaLoaiSP` sẽ tự động được đặt là NULL.
  • C. Một loại sản phẩm mới với `MaLoaiSP` đó sẽ tự động được tạo trong bảng `LoaiSanPham`.
  • D. Không có gì xảy ra bất thường, bản ghi được thêm bình thường.

Câu 7: Trong mối quan hệ giữa hai bảng thông qua Khóa ngoài, bảng chứa Khóa ngoài được gọi là bảng gì?

  • A. Bảng con (Child table)
  • B. Bảng cha (Parent table)
  • C. Bảng tham chiếu (Referenced table)
  • D. Bảng chính (Master table)

Câu 8: Bảng chứa Khóa chính mà Khóa ngoài tham chiếu đến được gọi là bảng gì?

  • A. Bảng con (Child table)
  • B. Bảng phụ (Accessory table)
  • C. Bảng tham chiếu (Referencing table)
  • D. Bảng cha (Parent table)

Câu 9: Điều nào sau đây KHÔNG PHẢI là lợi ích của việc sử dụng Khóa ngoài để thiết lập mối quan hệ giữa các bảng?

  • A. Đảm bảo dữ liệu trong bảng con tham chiếu đến các bản ghi tồn tại trong bảng cha.
  • B. Giúp dễ dàng truy vấn dữ liệu liên quan từ nhiều bảng.
  • C. Luôn tăng tốc độ truy vấn dữ liệu một cách đáng kể.
  • D. Ngăn chặn việc xóa bản ghi trong bảng cha khi vẫn còn bản ghi liên quan trong bảng con (tùy thuộc vào tùy chọn ON DELETE).

Câu 10: Trong ngữ cảnh của Khóa ngoài, tùy chọn `ON DELETE CASCADE` có ý nghĩa gì?

  • A. Ngăn chặn việc xóa bản ghi trong bảng cha nếu có bản ghi liên quan trong bảng con.
  • B. Khi bản ghi trong bảng cha bị xóa, các bản ghi liên quan trong bảng con cũng tự động bị xóa.
  • C. Khi bản ghi trong bảng cha bị xóa, giá trị Khóa ngoài trong các bản ghi liên quan ở bảng con sẽ được đặt thành NULL.
  • D. Khi bản ghi trong bảng cha bị xóa, thao tác xóa sẽ bị từ chối.

Câu 11: Tùy chọn `ON DELETE RESTRICT` (hoặc `NO ACTION`) trên Khóa ngoài có ý nghĩa gì?

  • A. Ngăn chặn việc xóa bản ghi trong bảng cha nếu có bản ghi liên quan trong bảng con.
  • B. Khi bản ghi trong bảng cha bị xóa, các bản ghi liên quan trong bảng con cũng tự động bị xóa.
  • C. Khi bản ghi trong bảng cha bị xóa, giá trị Khóa ngoài trong các bản ghi liên quan ở bảng con sẽ được đặt thành NULL.
  • D. Cho phép xóa bản ghi trong bảng cha và giữ nguyên các bản ghi liên quan trong bảng con (có thể dẫn đến dữ liệu "mồ côi").

Câu 12: Trong thiết kế cơ sở dữ liệu, việc sử dụng Khóa ngoài giúp đảm bảo loại toàn vẹn dữ liệu nào?

  • A. Toàn vẹn thực thể (Entity Integrity)
  • B. Toàn vẹn miền giá trị (Domain Integrity)
  • C. Toàn vẹn tham chiếu (Referential Integrity)
  • D. Toàn vẹn người dùng (User Integrity)

Câu 13: Một bảng có thể có bao nhiêu Khóa chính?

  • A. Chỉ một.
  • B. Không giới hạn.
  • C. Tối đa hai.
  • D. Tùy thuộc vào số lượng cột trong bảng.

Câu 14: Một bảng có thể có bao nhiêu Khóa ngoài?

  • A. Chỉ một.
  • B. Tối đa hai.
  • C. Tùy thuộc vào số lượng Khóa chính trong bảng đó.
  • D. Không giới hạn, tùy thuộc vào số lượng mối quan hệ cần thiết.

Câu 15: Điều nào sau đây là ĐÚNG về Khóa chính và giá trị NULL?

  • A. Khóa chính cho phép giá trị NULL.
  • B. Khóa chính không cho phép giá trị NULL.
  • C. Khóa chính chỉ cho phép một giá trị NULL duy nhất.
  • D. Khóa chính cho phép giá trị NULL nếu được khai báo rõ ràng.

Câu 16: Điều nào sau đây là ĐÚNG về Khóa ngoài và giá trị NULL?

  • A. Khóa ngoài không bao giờ cho phép giá trị NULL.
  • B. Khóa ngoài luôn luôn cho phép giá trị NULL.
  • C. Khóa ngoài có thể cho phép giá trị NULL nếu không được khai báo là `NOT NULL`.
  • D. Khóa ngoài chỉ cho phép giá trị NULL nếu Khóa chính được tham chiếu cũng là NULL.

Câu 17: Khi thiết kế cơ sở dữ liệu, bạn thường tạo bảng chứa Khóa chính trước hay bảng chứa Khóa ngoài trước trong một mối quan hệ 1-nhiều?

  • A. Tạo bảng chứa Khóa chính trước, sau đó tạo bảng chứa Khóa ngoài.
  • B. Tạo bảng chứa Khóa ngoài trước, sau đó tạo bảng chứa Khóa chính.
  • C. Thứ tự tạo bảng không quan trọng.
  • D. Chỉ cần tạo một bảng và định nghĩa cả hai khóa trong cùng bảng đó.

Câu 18: Tại sao việc sử dụng các giá trị tự tăng (AUTO_INCREMENT) cho Khóa chính kiểu số nguyên là một phương pháp phổ biến và được khuyến nghị?

  • A. Vì nó giúp lưu trữ nhiều thông tin hơn trong Khóa chính.
  • B. Vì nó cho phép Khóa chính có giá trị NULL.
  • C. Vì nó giúp tạo mối quan hệ nhiều-nhiều dễ dàng hơn.
  • D. Vì nó tự động tạo giá trị duy nhất cho mỗi bản ghi mới, đảm bảo tính toàn vẹn thực thể và dễ quản lý.

Câu 19: Cho lược đồ cơ sở dữ liệu mô tả mối quan hệ giữa Sinh viên và Khoa: `Khoa (MaKhoa PK, TenKhoa)` và `SinhVien (MaSV PK, TenSV, MaKhoa)`. Mối quan hệ này là loại mối quan hệ nào?

  • A. Một-nhiều (One-to-many)
  • B. Nhiều-một (Many-to-one)
  • C. Một-một (One-to-one)
  • D. Nhiều-nhiều (Many-to-many)

Câu 20: Nếu Khóa ngoài `MaKhoa` trong bảng `SinhVien` (từ câu 19) có tùy chọn `ON UPDATE CASCADE`, điều gì sẽ xảy ra nếu `MaKhoa` của một Khoa bị thay đổi trong bảng `Khoa`?

  • A. Thao tác cập nhật `MaKhoa` trong bảng `Khoa` sẽ bị từ chối.
  • B. Giá trị `MaKhoa` trong bảng `Khoa` được cập nhật, nhưng các giá trị `MaKhoa` liên quan trong bảng `SinhVien` vẫn giữ nguyên.
  • C. Khi `MaKhoa` trong bảng `Khoa` được cập nhật, tất cả các bản ghi trong bảng `SinhVien` có cùng `MaKhoa` cũ sẽ được cập nhật với giá trị `MaKhoa` mới.
  • D. Các bản ghi liên quan trong bảng `SinhVien` sẽ bị xóa.

Câu 21: Trong trường hợp nào bạn có thể cân nhắc sử dụng Khóa duy nhất (UNIQUE) thay vì Khóa chính (PRIMARY KEY) cho một cột?

  • A. Khi cột đó cần là mã định danh chính của bảng.
  • B. Khi cột đó cần đảm bảo tính duy nhất nhưng không phải là Khóa chính và có thể chấp nhận giá trị NULL (ví dụ: địa chỉ email tùy chọn).
  • C. Khi cột đó sẽ được sử dụng làm Khóa ngoài bởi bảng khác.
  • D. Khi cột đó cần tự động tăng giá trị.

Câu 22: Lợi ích chính của việc mô hình hóa mối quan hệ giữa các bảng bằng Khóa ngoài là gì?

  • A. Giảm sự dư thừa dữ liệu và tăng tính nhất quán của cơ sở dữ liệu.
  • B. Cho phép lưu trữ cùng một thông tin ở nhiều nơi để dễ truy cập.
  • C. Làm cho cơ sở dữ liệu phức tạp hơn và khó quản lý.
  • D. Ngăn chặn mọi thao tác cập nhật và xóa dữ liệu.

Câu 23: Khi tạo bảng trong một hệ quản trị cơ sở dữ liệu (ví dụ MySQL, SQL Server), bạn khai báo Khóa chính cho một cột bằng cách sử dụng từ khóa hoặc tùy chọn nào?

  • A. FOREIGN KEY
  • B. UNIQUE
  • C. PRIMARY KEY
  • D. INDEX

Câu 24: Khi tạo Khóa ngoài trong một bảng, bạn cần chỉ định những thông tin cơ bản nào?

  • A. Chỉ cần tên cột sẽ làm Khóa ngoài.
  • B. Chỉ cần tên bảng cha được tham chiếu.
  • C. Chỉ cần tên cột Khóa chính trong bảng cha.
  • D. Cột Khóa ngoài trong bảng hiện tại, bảng cha được tham chiếu, và cột Khóa chính trong bảng cha.

Câu 25: Bạn có bảng `Sach (MaSach PK, TenSach, MaTacGia)` và bảng `TacGia (MaTacGia PK, TenTacGia)`. Giả sử một tác giả có thể viết nhiều sách. Trường `MaTacGia` trong bảng `Sach` là Khóa ngoài. Điều nào sau đây là ĐÚNG?

  • A. Bảng `TacGia` là bảng cha, bảng `Sach` là bảng con.
  • B. Bảng `Sach` là bảng cha, bảng `TacGia` là bảng con.
  • C. Cả hai bảng đều là bảng cha và bảng con.
  • D. Không có mối quan hệ cha-con trong trường hợp này.

Câu 26: Nếu bạn muốn ngăn chặn việc chèn hai bản ghi có cùng giá trị trong cột `SoDienThoai` của bảng `NguoiDung` nhưng vẫn cho phép một vài bản ghi không có số điện thoại (NULL), bạn nên sử dụng ràng buộc nào cho cột `SoDienThoai`?

  • A. PRIMARY KEY
  • B. UNIQUE
  • C. FOREIGN KEY
  • D. NOT NULL

Câu 27: Điều gì xảy ra nếu bạn cố gắng xóa một bản ghi trong bảng cha khi Khóa ngoài trong bảng con được thiết lập với tùy chọn `ON DELETE SET NULL` và có các bản ghi liên quan tồn tại?

  • A. Thao tác xóa sẽ bị từ chối.
  • B. Các bản ghi liên quan trong bảng con cũng sẽ bị xóa theo.
  • C. Thao tác xóa sẽ thành công và các giá trị Khóa ngoài liên quan trong bảng con sẽ giữ nguyên (dẫn đến dữ liệu "mồ côi").
  • D. Thao tác xóa trong bảng cha thành công, và giá trị Khóa ngoài trong các bản ghi liên quan ở bảng con được đặt thành NULL.

Câu 28: Khi thiết kế cơ sở dữ liệu, việc xác định Khóa chính cho mỗi bảng là bước quan trọng nhất trong việc đảm bảo loại toàn vẹn dữ liệu nào?

  • A. Toàn vẹn thực thể (Entity Integrity)
  • B. Toàn vẹn tham chiếu (Referential Integrity)
  • C. Toàn vẹn miền giá trị (Domain Integrity)
  • D. Toàn vẹn người dùng (User Integrity)

Câu 29: Giả sử bạn có bảng `KhoaHoc (MaKH PK, TenKH)` và `GiangVien (MaGV PK, TenGV)`. Một giảng viên có thể dạy nhiều khóa học, và một khóa học có thể được dạy bởi nhiều giảng viên. Để mô hình hóa mối quan hệ này bằng Khóa ngoài, bạn sẽ cần thêm một bảng thứ ba. Cấu trúc cơ bản của bảng thứ ba này sẽ bao gồm những trường nào làm Khóa ngoài?

  • A. Chỉ cần Khóa ngoài tham chiếu đến `KhoaHoc.MaKH`.
  • B. Chỉ cần Khóa ngoài tham chiếu đến `GiangVien.MaGV`.
  • C. Khóa ngoài tham chiếu đến `KhoaHoc.MaKH` VÀ Khóa ngoài tham chiếu đến `GiangVien.MaGV`.
  • D. Một Khóa chính mới và một Khóa ngoài tham chiếu đến một trong hai bảng.

Câu 30: Điều nào sau đây mô tả chính xác nhất hậu quả của việc thiếu Khóa ngoài trong thiết kế cơ sở dữ liệu quan hệ?

  • A. Làm tăng đáng kể tốc độ truy vấn.
  • B. Có thể dẫn đến dữ liệu không nhất quán, dữ liệu "mồ côi" và vi phạm tính toàn vẹn tham chiếu.
  • C. Giúp dễ dàng thêm và xóa dữ liệu mà không gặp ràng buộc nào.
  • D. Bắt buộc phải lưu trữ tất cả dữ liệu trong một bảng duy nhất.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 1: Trong thiết kế cơ sở dữ liệu, vai trò chính của Khóa chính (Primary Key) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 2: Khóa ngoài (Foreign Key) trong một bảng được sử dụng với mục đích chính nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 3: Cho hai bảng `KhachHang (MaKH PK, TenKH)` và `DonHang (MaDH PK, NgayDH, MaKH)`. Để thiết lập mối quan hệ giữa đơn hàng và khách hàng, trường `MaKH` trong bảng `DonHang` đóng vai trò gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 4: Khi khai báo một Khóa ngoài, kiểu dữ liệu của cột Khóa ngoài phải như thế nào so với cột Khóa chính mà nó tham chiếu đến?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 5: Ràng buộc `UNIQUE` khác với `PRIMARY KEY` ở điểm nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 6: Giả sử bạn có bảng `SanPham (MaSP PK, TenSP, MaLoaiSP)` và bảng `LoaiSanPham (MaLoaiSP PK, TenLoai)`. Trường `MaLoaiSP` trong bảng `SanPham` là Khóa ngoài tham chiếu đến bảng `LoaiSanPham`. Nếu bạn cố gắng thêm một sản phẩm mới với `MaLoaiSP` không tồn tại trong bảng `LoaiSanPham`, điều gì sẽ xảy ra?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 7: Trong mối quan hệ giữa hai bảng thông qua Khóa ngoài, bảng chứa Khóa ngoài được gọi là bảng gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 8: Bảng chứa Khóa chính mà Khóa ngoài tham chiếu đến được gọi là bảng gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 9: Điều nào sau đây KHÔNG PHẢI là lợi ích của việc sử dụng Khóa ngoài để thiết lập mối quan hệ giữa các bảng?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 10: Trong ngữ cảnh của Khóa ngoài, tùy chọn `ON DELETE CASCADE` có ý nghĩa gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 11: Tùy chọn `ON DELETE RESTRICT` (hoặc `NO ACTION`) trên Khóa ngoài có ý nghĩa gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 12: Trong thiết kế cơ sở dữ liệu, việc sử dụng Khóa ngoài giúp đảm bảo loại toàn vẹn dữ liệu nào?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 13: Một bảng có thể có bao nhiêu Khóa chính?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 14: Một bảng có thể có bao nhiêu Khóa ngoài?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 15: Điều nào sau đây là ĐÚNG về Khóa chính và giá trị NULL?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 16: Điều nào sau đây là ĐÚNG về Khóa ngoài và giá trị NULL?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 17: Khi thiết kế cơ sở dữ liệu, bạn thường tạo bảng chứa Khóa chính trước hay bảng chứa Khóa ngoài trước trong một mối quan hệ 1-nhiều?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 18: Tại sao việc sử dụng các giá trị tự tăng (AUTO_INCREMENT) cho Khóa chính kiểu số nguyên là một phương pháp phổ biến và được khuyến nghị?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 19: Cho lược đồ cơ sở dữ liệu mô tả mối quan hệ giữa Sinh viên và Khoa: `Khoa (MaKhoa PK, TenKhoa)` và `SinhVien (MaSV PK, TenSV, MaKhoa)`. Mối quan hệ này là loại mối quan hệ nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 20: Nếu Khóa ngoài `MaKhoa` trong bảng `SinhVien` (từ câu 19) có tùy chọn `ON UPDATE CASCADE`, điều gì sẽ xảy ra nếu `MaKhoa` của một Khoa bị thay đổi trong bảng `Khoa`?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 21: Trong trường hợp nào bạn có thể cân nhắc sử dụng Khóa duy nhất (UNIQUE) thay vì Khóa chính (PRIMARY KEY) cho một cột?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 22: Lợi ích chính của việc mô hình hóa mối quan hệ giữa các bảng bằng Khóa ngoài là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 23: Khi tạo bảng trong một hệ quản trị cơ sở dữ liệu (ví dụ MySQL, SQL Server), bạn khai báo Khóa chính cho một cột bằng cách sử dụng từ khóa hoặc tùy chọn nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 24: Khi tạo Khóa ngoài trong một bảng, bạn cần chỉ định những thông tin cơ bản nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 25: Bạn có bảng `Sach (MaSach PK, TenSach, MaTacGia)` và bảng `TacGia (MaTacGia PK, TenTacGia)`. Giả sử một tác giả có thể viết nhiều sách. Trường `MaTacGia` trong bảng `Sach` là Khóa ngoài. Điều nào sau đây là ĐÚNG?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 26: Nếu bạn muốn ngăn chặn việc chèn hai bản ghi có cùng giá trị trong cột `SoDienThoai` của bảng `NguoiDung` nhưng vẫn cho phép một vài bản ghi không có số điện thoại (NULL), bạn nên sử dụng ràng buộc nào cho cột `SoDienThoai`?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 27: Điều gì xảy ra nếu bạn cố gắng xóa một bản ghi trong bảng cha khi Khóa ngoài trong bảng con được thiết lập với tùy chọn `ON DELETE SET NULL` và có các bản ghi liên quan tồn tại?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 28: Khi thiết kế cơ sở dữ liệu, việc xác định Khóa chính cho mỗi bảng là bước quan trọng nhất trong việc đảm bảo loại toàn vẹn dữ liệu nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 29: Giả sử bạn có bảng `KhoaHoc (MaKH PK, TenKH)` và `GiangVien (MaGV PK, TenGV)`. Một giảng viên có thể dạy nhiều khóa học, và một khóa học có thể được dạy bởi nhiều giảng viên. Để mô hình hóa mối quan hệ này bằng Khóa ngoài, bạn sẽ cần thêm một bảng thứ ba. Cấu trúc cơ bản của bảng thứ ba này sẽ bao gồm những trường nào làm Khóa ngoài?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 03

Câu 30: Điều nào sau đây mô tả chính xác nhất hậu quả của việc thiếu Khóa ngoài trong thiết kế cơ sở dữ liệu quan hệ?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 04

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 04 đượ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 mô hình cơ sở dữ liệu quan hệ, vai trò quan trọng nhất của Khóa chính (Primary Key - PK) là gì?

  • A. Giúp sắp xếp dữ liệu trong bảng một cách tự động.
  • B. Tăng tốc độ truy vấn dữ liệu cho mọi trường trong bảng.
  • C. Thiết lập mối quan hệ "một-nhiều" với các bảng khác.
  • D. Định danh duy nhất cho mỗi bản ghi trong bảng và đảm bảo tính toàn vẹn dữ liệu.

Câu 2: Cho hai bảng `SINH_VIEN` (MaSV, TenSV, MaLop) và `LOP_HOC` (MaLop, TenLop, SiSo). Để thể hiện mối quan hệ "một lớp có nhiều sinh viên" và đảm bảo mỗi `MaLop` trong bảng `SINH_VIEN` phải tồn tại trong bảng `LOP_HOC`, ta cần thiết lập ràng buộc nào?

  • A. Thiết lập `MaSV` là Khóa chính trong bảng `LOP_HOC`.
  • B. Thiết lập `MaLop` là Khóa chính trong cả hai bảng `SINH_VIEN` và `LOP_HOC`.
  • C. Thiết lập `MaLop` trong bảng `SINH_VIEN` làm Khóa ngoài tham chiếu đến `MaLop` (Khóa chính) trong bảng `LOP_HOC`.
  • D. Thiết lập `TenLop` trong bảng `SINH_VIEN` làm Khóa ngoài tham chiếu đến `TenLop` trong bảng `LOP_HOC`.

Câu 3: Ràng buộc nào sau đây không phải là đặc điểm bắt buộc của một trường được chọn làm Khóa chính (Primary Key)?

  • A. Phải có kiểu dữ liệu là số nguyên (INT) và có thuộc tính tự động tăng (AUTO_INCREMENT).
  • B. Giá trị của nó phải là duy nhất trong toàn bộ bảng.
  • C. Không được chứa giá trị NULL.
  • D. Được sử dụng để thiết lập mối quan hệ với các bảng khác thông qua Khóa ngoài.

Câu 4: Xét bảng `DON_HANG` (MaDH, NgayDat, MaKH) và bảng `KHACH_HANG` (MaKH, TenKH, DiaChi). Trường `MaKH` trong bảng `DON_HANG` là Khóa ngoài tham chiếu đến `MaKH` (Khóa chính) trong bảng `KHACH_HANG`. Nếu bạn cố gắng thêm một bản ghi vào bảng `DON_HANG` với giá trị `MaKH` là "KH999", nhưng trong bảng `KHACH_HANG` không tồn tại khách hàng nào có `MaKH` là "KH999", hệ quản trị CSDL sẽ phản ứng thế nào (với thiết lập mặc định)?

  • A. Hệ thống sẽ tự động tạo một bản ghi mới trong bảng `KHACH_HANG` với `MaKH` là "KH999".
  • B. Hệ thống sẽ báo lỗi vi phạm ràng buộc Khóa ngoài và từ chối thêm bản ghi.
  • C. Hệ thống sẽ thêm bản ghi vào bảng `DON_HANG` nhưng đặt giá trị `MaKH` là NULL.
  • D. Hệ thống sẽ bỏ qua ràng buộc và thêm bản ghi thành công.

Câu 5: Cho các bảng như Câu 4. Nếu bạn muốn xóa một khách hàng khỏi bảng `KHACH_HANG` mà khách hàng đó có các đơn hàng liên quan trong bảng `DON_HANG`, điều gì sẽ xảy ra với các bản ghi đơn hàng đó nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE CASCADE`?

  • A. Các bản ghi đơn hàng của khách hàng đó trong bảng `DON_HANG` cũng sẽ tự động bị xóa.
  • B. Hệ thống sẽ báo lỗi và từ chối xóa khách hàng đó khỏi bảng `KHACH_HANG`.
  • C. Các bản ghi đơn hàng đó sẽ vẫn tồn tại trong bảng `DON_HANG` nhưng trường `MaKH` sẽ được đặt là NULL.
  • D. Hệ thống sẽ chuyển các bản ghi đơn hàng đó sang một bảng tạm khác.

Câu 6: Khác biệt cơ bản nhất giữa ràng buộc Khóa chính (Primary Key) và ràng buộc Duy nhất (UNIQUE) trên một trường là gì?

  • A. Khóa chính có thể chứa giá trị NULL, còn Khóa UNIQUE thì không.
  • B. Khóa chính không được chứa giá trị NULL, còn Khóa UNIQUE có thể chứa giá trị NULL (tối đa một lần).
  • C. Một bảng chỉ có thể có một Khóa chính, nhưng có thể có nhiều Khóa UNIQUE.
  • D. Khóa chính được dùng để liên kết bảng, còn Khóa UNIQUE thì không.

Câu 7: Tại sao việc sử dụng Khóa ngoài lại quan trọng trong thiết kế cơ sở dữ liệu quan hệ?

  • A. Giúp mã hóa dữ liệu, tăng cường bảo mật.
  • B. Tăng tốc độ truy vấn cho toàn bộ cơ sở dữ liệu.
  • C. Tự động tạo giá trị cho các trường khi thêm bản ghi mới.
  • D. 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.

Câu 8: Khi thiết kế bảng `SAN_PHAM` (MaSP, TenSP, Gia, MaLoai) và bảng `LOAI_SAN_PHAM` (MaLoai, TenLoai), trường nào trong bảng `SAN_PHAM` nên được chọn làm Khóa ngoài để liên kết với bảng `LOAI_SAN_PHAM`?

  • A. MaSP
  • B. TenSP
  • C. MaLoai
  • D. Gia

Câu 9: Giả sử bạn có bảng `HOC_SINH` (MaHS, TenHS, NgaySinh) và muốn thêm thông tin về điểm thi của học sinh vào một bảng mới là `DIEM_THI` (MaBaiThi, MaHS, DiemSo). Trường nào trong bảng `DIEM_THI` cần được thiết lập làm Khóa ngoài để liên kết với bảng `HOC_SINH`?

  • A. MaBaiThi
  • B. MaHS
  • C. DiemSo
  • D. Không cần Khóa ngoài trong trường hợp này.

Câu 10: Khi tạo một Khóa ngoài tham chiếu đến Khóa chính của bảng khác, điều kiện bắt buộc về kiểu dữ liệu của trường Khóa ngoài so với trường Khóa chính được tham chiếu là gì?

  • A. Kiểu dữ liệu của Khóa ngoài phải là VARCHAR.
  • B. Kiểu dữ liệu của Khóa ngoài phải khác kiểu dữ liệu của Khóa chính.
  • C. Kiểu dữ liệu của Khóa ngoài phải là TEXT.
  • D. Kiểu dữ liệu của Khóa ngoài phải giống (hoặc tương thích) với kiểu dữ liệu của Khóa chính được tham chiếu.

Câu 11: Chức năng AUTO_INCREMENT thường được áp dụng cho trường nào trong bảng CSDL và mục đích chính của nó là gì?

  • A. Áp dụng cho Khóa ngoài để tự động điền giá trị từ bảng cha.
  • B. Áp dụng cho các trường ngày tháng để tự động ghi lại thời gian hiện tại.
  • C. Áp dụng cho Khóa chính (thường là kiểu số) để tự động tạo giá trị duy nhất tăng dần cho mỗi bản ghi mới.
  • D. Áp dụng cho mọi trường văn bản để tự động thêm số thứ tự.

Câu 12: Khi thiết kế một bảng, nếu bạn muốn đảm bảo rằng một trường cụ thể luôn luôn phải có dữ liệu (không được để trống), bạn sẽ áp dụng ràng buộc nào cho trường đó?

  • A. NOT NULL
  • B. UNIQUE
  • C. PRIMARY KEY
  • D. FOREIGN KEY

Câu 13: Trong một hệ quản trị CSDL, việc tạo lập các bảng có Khóa ngoài giúp hệ thống kiểm soát và duy trì loại tính toàn vẹn dữ liệu nào?

  • A. Toàn vẹn thực thể (Entity Integrity)
  • B. Toàn vẹn tham chiếu (Referential Integrity)
  • C. Toàn vẹn miền giá trị (Domain Integrity)
  • D. Toàn vẹn người dùng (User Integrity)

Câu 14: Bạn đang thiết kế một cơ sở dữ liệu cho thư viện. Bạn có bảng `SACH` (MaSach, TenSach, MaTacGia) và bảng `TAC_GIA` (MaTacGia, TenTacGia). Trường `MaTacGia` trong bảng `SACH` là Khóa ngoài tham chiếu đến `MaTacGia` (PK) trong bảng `TAC_GIA`. Nếu bạn cố gắng cập nhật `MaTacGia` của một tác giả trong bảng `TAC_GIA` mà tác giả đó có sách liên quan trong bảng `SACH`, điều gì sẽ xảy ra với các bản ghi sách đó nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON UPDATE CASCADE`?

  • A. Hệ thống sẽ báo lỗi và từ chối cập nhật `MaTacGia` trong bảng `TAC_GIA`.
  • B. Các bản ghi sách liên quan trong bảng `SACH` sẽ bị xóa.
  • C. Giá trị `MaTacGia` trong các bản ghi sách liên quan ở bảng `SACH` sẽ tự động được cập nhật theo giá trị mới.
  • D. Giá trị `MaTacGia` trong các bản ghi sách liên quan sẽ được đặt là NULL.

Câu 15: Khi nào thì một trường Khóa ngoài trong bảng con có thể chứa giá trị NULL?

  • A. Luôn luôn, Khóa ngoài luôn cho phép giá trị NULL.
  • B. Chỉ khi trường đó cũng là Khóa chính của bảng con.
  • C. Chỉ khi bảng cha không có Khóa chính.
  • D. Khi trường Khóa ngoài không được áp dụng ràng buộc NOT NULL.

Câu 16: Việc thiết kế cơ sở dữ liệu với các Khóa chính và Khóa ngoài phù hợp giúp đạt được mục tiêu nào sau đây trong quản lý dữ liệu?

  • A. Giảm sự lặp thừa dữ liệu và tăng tính nhất quán.
  • B. Cho phép lưu trữ mọi loại dữ liệu trong một bảng duy nhất.
  • C. Loại bỏ hoàn toàn nhu cầu về các ràng buộc dữ liệu khác.
  • D. Tự động sao lưu dữ liệu theo lịch trình.

Câu 17: Trong quá trình tạo bảng bằng công cụ đồ họa (ví dụ: trong giao diện thiết kế bảng), bạn thường thực hiện thao tác nào để thiết lập một trường làm Khóa chính?

  • A. Chọn trường đó và nhấn nút "Delete Column".
  • B. Chọn trường đó và đặt kiểu dữ liệu là VARCHAR.
  • C. Chọn trường đó và đánh dấu/chọn tùy chọn "Primary Key".
  • D. Chọn trường đó và đặt giá trị mặc định là 0.

Câu 18: Tại sao khi tạo Khóa ngoài, trường Khóa ngoài và trường Khóa chính được tham chiếu cần có cùng kiểu dữ liệu (hoặc tương thích)?

  • A. Để tiết kiệm không gian lưu trữ trong cơ sở dữ liệu.
  • B. Để hệ quản trị CSDL có thể so sánh giá trị của Khóa ngoài với Khóa chính một cách chính xác.
  • C. Vì tất cả các trường trong một cơ sở dữ liệu phải có cùng kiểu dữ liệu.
  • D. Để tự động tạo chỉ mục cho cả hai trường.

Câu 19: Bạn thiết kế bảng `NHAN_VIEN` (MaNV, TenNV, MaPhongBan) và bảng `PHONG_BAN` (MaPhongBan, TenPhongBan). `MaPhongBan` trong `NHAN_VIEN` là Khóa ngoài tham chiếu đến `MaPhongBan` (PK) trong `PHONG_BAN`. Nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE RESTRICT` (mặc định ở nhiều hệ thống), điều gì sẽ xảy ra khi bạn cố gắng xóa một phòng ban khỏi bảng `PHONG_BAN` mà phòng ban đó vẫn còn nhân viên trong bảng `NHAN_VIEN`?

  • A. Hệ thống sẽ báo lỗi và từ chối thao tác xóa.
  • B. Các nhân viên trong phòng ban đó sẽ tự động bị xóa khỏi bảng `NHAN_VIEN`.
  • C. Trường `MaPhongBan` của các nhân viên trong phòng ban đó sẽ được đặt là NULL.
  • D. Hệ thống sẽ xóa phòng ban nhưng giữ lại các nhân viên liên quan.

Câu 20: Xét bảng `SAN_PHAM` (MaSP, TenSP, Gia) và bảng `CHI_TIET_DON_HANG` (MaCTDH, MaDH, MaSP, SoLuong). Để liên kết `CHI_TIET_DON_HANG` với `SAN_PHAM`, trường `MaSP` trong bảng `CHI_TIET_DON_HANG` cần được thiết lập là gì?

  • A. Khóa chính (Primary Key)
  • B. Khóa ngoài (Foreign Key)
  • C. Ràng buộc Duy nhất (UNIQUE)
  • D. Không cần ràng buộc đặc biệt.

Câu 21: Tại sao việc sử dụng Khóa chính là AUTO_INCREMENT thường được khuyến khích cho các trường định danh (ID)?

  • A. Để làm cho trường đó có thể chứa giá trị NULL.
  • B. Để mã hóa giá trị của trường, tăng bảo mật.
  • C. Để cho phép giá trị trong trường đó bị trùng lặp.
  • D. Để tự động tạo ra các giá trị duy nhất, liên tục và không cần nhập liệu thủ công.

Câu 22: Khi thiết kế cơ sở dữ liệu, việc xác định đúng Khóa chính và Khóa ngoài giữa các bảng là bước quan trọng nhất trong giai đoạn nào?

  • A. Giai đoạn thu thập yêu cầu.
  • B. Giai đoạn thiết kế cơ sở dữ liệu.
  • C. Giai đoạn nhập dữ liệu ban đầu.
  • D. Giai đoạn bảo trì hệ thống.

Câu 23: Giả sử bạn có bảng `DU_AN` (MaDA, TenDA) và bảng `NHAN_VIEN` (MaNV, TenNV). Một nhân viên có thể tham gia nhiều dự án, và một dự án có nhiều nhân viên tham gia (quan hệ N:M). Để biểu diễn mối quan hệ này trong CSDL quan hệ, bạn cần tạo thêm một bảng trung gian. Cấu trúc cơ bản của bảng trung gian này (ví dụ: `PHAN_CONG`) sẽ cần những trường khóa nào?

  • A. Chỉ cần Khóa chính là MaDA.
  • B. Chỉ cần Khóa chính là MaNV.
  • C. Các Khóa ngoài tham chiếu đến MaDA và MaNV, và Khóa chính thường là sự kết hợp của MaDA và MaNV.
  • D. Chỉ cần một Khóa chính tự động tăng và không cần Khóa ngoài.

Câu 24: Trong ngữ cảnh của Khóa ngoài, "bảng cha" (parent table) là bảng chứa trường nào?

  • A. Chứa Khóa chính được tham chiếu bởi Khóa ngoài của bảng khác.
  • B. Chứa Khóa ngoài tham chiếu đến Khóa chính của bảng khác.
  • C. Chứa tất cả các trường có giá trị NULL.
  • D. Là bảng được tạo ra sau cùng trong cơ sở dữ liệu.

Câu 25: Điều gì sẽ xảy ra nếu bạn cố gắng tạo Khóa ngoài trên một trường có kiểu dữ liệu khác biệt hoàn toàn (ví dụ: số nguyên INT và chuỗi văn bản VARCHAR) so với kiểu dữ liệu của trường Khóa chính mà nó tham chiếu?

  • A. Hệ thống sẽ tự động chuyển đổi kiểu dữ liệu cho phù hợp.
  • B. Khóa ngoài sẽ được tạo thành công nhưng sẽ không hoạt động đúng.
  • C. Hệ thống sẽ báo lỗi và từ chối tạo Khóa ngoài.
  • D. Dữ liệu sẽ bị mất khi thêm bản ghi mới.

Câu 26: Khi sử dụng công cụ đồ họa để thiết kế bảng, việc khai báo Khóa ngoài thường bao gồm những bước chính nào?

  • A. Chỉ cần chọn trường làm Khóa ngoài và lưu bảng.
  • B. Chỉ cần nhập tên Khóa ngoài.
  • C. Chọn trường làm Khóa ngoài và đặt kiểu dữ liệu là AUTO_INCREMENT.
  • D. Chọn trường làm Khóa ngoài, chỉ định bảng và trường Khóa chính được tham chiếu, và cấu hình các tùy chọn cho hành động cập nhật/xóa.

Câu 27: Ràng buộc nào đảm bảo rằng một cặp các trường (ví dụ: Tên đăng nhập và Email) trong một bảng không được phép có giá trị trùng lặp, nhưng vẫn cho phép một trong các trường đó có giá trị NULL (nếu không có ràng buộc NOT NULL riêng)?

  • A. PRIMARY KEY
  • B. UNIQUE (trên cặp trường)
  • C. FOREIGN KEY
  • D. NOT NULL

Câu 28: Lợi ích chính của việc áp dụng các ràng buộc (như PK, FK, UNIQUE, NOT NULL) trực tiếp trên cấu trúc bảng trong CSDL là gì?

  • A. Đảm bảo tính toàn vẹn và nhất quán của dữ liệu ở mức độ cơ sở dữ liệu, không phụ thuộc vào ứng dụng sử dụng.
  • B. Giúp người dùng cuối dễ dàng thay đổi cấu trúc bảng.
  • C. Chỉ có tác dụng khi dữ liệu được nhập bằng tay.
  • D. Làm chậm tốc độ truy cập dữ liệu một cách đáng kể.

Câu 29: Bạn có bảng `MON_HOC` (MaMH, TenMH) và bảng `GIAO_VIEN` (MaGV, TenGV). Một môn học có thể được dạy bởi nhiều giáo viên, và một giáo viên có thể dạy nhiều môn (quan hệ N:M). Để tạo bảng `PHAN_CONG_GIANG_DAY` biểu diễn mối quan hệ này, cấu trúc nào sau đây là hợp lý nhất về mặt khóa?

  • A. PHAN_CONG_GIANG_DAY (MaPhanCong PK, MaMH FK, TenGV)
  • B. PHAN_CONG_GIANG_DAY (MaMH PK, MaGV PK, TenMH, TenGV)
  • C. PHAN_CONG_GIANG_DAY (MaMH FK, MaGV FK) với (MaMH, MaGV) là Khóa chính tổng hợp.
  • D. PHAN_CONG_GIANG_DAY (MaPhanCong PK AUTO_INCREMENT, MaMH, MaGV)

Câu 30: Trong thiết kế cơ sở dữ liệu cho một hệ thống bán hàng, bảng `KHACH_HANG` (MaKH PK) và bảng `DON_HANG` (MaDH PK, MaKH FK). Nếu bạn muốn khi một khách hàng bị xóa, tất cả đơn hàng của khách hàng đó cũng bị xóa theo, bạn sẽ thiết lập tùy chọn nào cho Khóa ngoài `MaKH` trong bảng `DON_HANG`?

  • A. ON DELETE CASCADE
  • B. ON DELETE RESTRICT
  • C. ON DELETE SET NULL
  • D. ON DELETE NO ACTION

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, vai trò *quan trọng nhất* của Khóa chính (Primary Key - PK) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 2: Cho hai bảng `SINH_VIEN` (MaSV, TenSV, MaLop) và `LOP_HOC` (MaLop, TenLop, SiSo). Để thể hiện mối quan hệ 'một lớp có nhiều sinh viên' và đảm bảo mỗi `MaLop` trong bảng `SINH_VIEN` phải tồn tại trong bảng `LOP_HOC`, ta cần thiết lập ràng buộc nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 3: Ràng buộc nào sau đây *không* phải là đặc điểm bắt buộc của một trường được chọn làm Khóa chính (Primary Key)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 4: Xét bảng `DON_HANG` (MaDH, NgayDat, MaKH) và bảng `KHACH_HANG` (MaKH, TenKH, DiaChi). Trường `MaKH` trong bảng `DON_HANG` là Khóa ngoài tham chiếu đến `MaKH` (Khóa chính) trong bảng `KHACH_HANG`. Nếu bạn cố gắng thêm một bản ghi vào bảng `DON_HANG` với giá trị `MaKH` là 'KH999', nhưng trong bảng `KHACH_HANG` không tồn tại khách hàng nào có `MaKH` là 'KH999', hệ quản trị CSDL sẽ phản ứng thế nào (với thiết lập mặc định)?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 5: Cho các bảng như Câu 4. Nếu bạn muốn xóa một khách hàng khỏi bảng `KHACH_HANG` mà khách hàng đó có các đơn hàng liên quan trong bảng `DON_HANG`, điều gì sẽ xảy ra với các bản ghi đơn hàng đó nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE CASCADE`?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 6: Khác biệt cơ bản nhất giữa ràng buộc Khóa chính (Primary Key) và ràng buộc Duy nhất (UNIQUE) trên một trường là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 7: Tại sao việc sử dụng Khóa ngoài lại quan trọng trong thiết kế cơ sở dữ liệu quan hệ?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 8: Khi thiết kế bảng `SAN_PHAM` (MaSP, TenSP, Gia, MaLoai) và bảng `LOAI_SAN_PHAM` (MaLoai, TenLoai), trường nào trong bảng `SAN_PHAM` nên được chọn làm Khóa ngoài để liên kết với bảng `LOAI_SAN_PHAM`?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 9: Giả sử bạn có bảng `HOC_SINH` (MaHS, TenHS, NgaySinh) và muốn thêm thông tin về điểm thi của học sinh vào một bảng mới là `DIEM_THI` (MaBaiThi, MaHS, DiemSo). Trường nào trong bảng `DIEM_THI` cần được thiết lập làm Khóa ngoài để liên kết với bảng `HOC_SINH`?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 10: Khi tạo một Khóa ngoài tham chiếu đến Khóa chính của bảng khác, điều kiện *bắt buộc* về kiểu dữ liệu của trường Khóa ngoài so với trường Khóa chính được tham chiếu là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 11: Chức năng AUTO_INCREMENT thường được áp dụng cho trường nào trong bảng CSDL và mục đích chính của nó là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 12: Khi thiết kế một bảng, nếu bạn muốn đảm bảo rằng một trường cụ thể *luôn luôn* phải có dữ liệu (không được để trống), bạn sẽ áp dụng ràng buộc nào cho trường đó?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 13: Trong một hệ quản trị CSDL, việc tạo lập các bảng có Khóa ngoài giúp hệ thống kiểm soát và duy trì loại tính toàn vẹn dữ liệu nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 14: Bạn đang thiết kế một cơ sở dữ liệu cho thư viện. Bạn có bảng `SACH` (MaSach, TenSach, MaTacGia) và bảng `TAC_GIA` (MaTacGia, TenTacGia). Trường `MaTacGia` trong bảng `SACH` là Khóa ngoài tham chiếu đến `MaTacGia` (PK) trong bảng `TAC_GIA`. Nếu bạn cố gắng cập nhật `MaTacGia` của một tác giả trong bảng `TAC_GIA` mà tác giả đó có sách liên quan trong bảng `SACH`, điều gì sẽ xảy ra với các bản ghi sách đó nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON UPDATE CASCADE`?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 15: Khi nào thì một trường Khóa ngoài trong bảng con có thể chứa giá trị NULL?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 16: Việc thiết kế cơ sở dữ liệu với các Khóa chính và Khóa ngoài phù hợp giúp đạt được mục tiêu nào sau đây trong quản lý dữ liệu?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 17: Trong quá trình tạo bảng bằng công cụ đồ họa (ví dụ: trong giao diện thiết kế bảng), bạn thường thực hiện thao tác nào để thiết lập một trường làm Khóa chính?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 18: Tại sao khi tạo Khóa ngoài, trường Khóa ngoài và trường Khóa chính được tham chiếu cần có cùng kiểu dữ liệu (hoặc tương thích)?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 19: Bạn thiết kế bảng `NHAN_VIEN` (MaNV, TenNV, MaPhongBan) và bảng `PHONG_BAN` (MaPhongBan, TenPhongBan). `MaPhongBan` trong `NHAN_VIEN` là Khóa ngoài tham chiếu đến `MaPhongBan` (PK) trong `PHONG_BAN`. Nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE RESTRICT` (mặc định ở nhiều hệ thống), điều gì sẽ xảy ra khi bạn cố gắng xóa một phòng ban khỏi bảng `PHONG_BAN` mà phòng ban đó vẫn còn nhân viên trong bảng `NHAN_VIEN`?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 20: Xét bảng `SAN_PHAM` (MaSP, TenSP, Gia) và bảng `CHI_TIET_DON_HANG` (MaCTDH, MaDH, MaSP, SoLuong). Để liên kết `CHI_TIET_DON_HANG` với `SAN_PHAM`, trường `MaSP` trong bảng `CHI_TIET_DON_HANG` cần được thiết lập là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 21: Tại sao việc sử dụng Khóa chính là AUTO_INCREMENT thường được khuyến khích cho các trường định danh (ID)?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 22: Khi thiết kế cơ sở dữ liệu, việc xác định đúng Khóa chính và Khóa ngoài giữa các bảng là bước quan trọng nhất trong giai đoạn nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 23: Giả sử bạn có bảng `DU_AN` (MaDA, TenDA) và bảng `NHAN_VIEN` (MaNV, TenNV). Một nhân viên có thể tham gia nhiều dự án, và một dự án có nhiều nhân viên tham gia (quan hệ N:M). Để biểu diễn mối quan hệ này trong CSDL quan hệ, bạn cần tạo thêm một bảng trung gian. Cấu trúc cơ bản của bảng trung gian này (ví dụ: `PHAN_CONG`) sẽ cần những trường khóa nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 24: Trong ngữ cảnh của Khóa ngoài, 'bảng cha' (parent table) là bảng chứa trường nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 25: Điều gì sẽ xảy ra nếu bạn cố gắng tạo Khóa ngoài trên một trường có kiểu dữ liệu khác biệt hoàn toàn (ví dụ: số nguyên INT và chuỗi văn bản VARCHAR) so với kiểu dữ liệu của trường Khóa chính mà nó tham chiếu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 26: Khi sử dụng công cụ đồ họa để thiết kế bảng, việc khai báo Khóa ngoài thường bao gồm những bước chính nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 27: Ràng buộc nào đảm bảo rằng một cặp các trường (ví dụ: Tên đăng nhập và Email) trong một bảng không được phép có giá trị trùng lặp, nhưng vẫn cho phép một trong các trường đó có giá trị NULL (nếu không có ràng buộc NOT NULL riêng)?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 28: Lợi ích chính của việc áp dụng các ràng buộc (như PK, FK, UNIQUE, NOT NULL) trực tiếp trên cấu trúc bảng trong CSDL là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 29: Bạn có bảng `MON_HOC` (MaMH, TenMH) và bảng `GIAO_VIEN` (MaGV, TenGV). Một môn học có thể được dạy bởi nhiều giáo viên, và một giáo viên có thể dạy nhiều môn (quan hệ N:M). Để tạo bảng `PHAN_CONG_GIANG_DAY` biểu diễn mối quan hệ này, cấu trúc nào sau đây là hợp lý nhất về mặt khóa?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 04

Câu 30: Trong thiết kế cơ sở dữ liệu cho một hệ thống bán hàng, bảng `KHACH_HANG` (MaKH PK) và bảng `DON_HANG` (MaDH PK, MaKH FK). Nếu bạn muốn khi một khách hàng bị xóa, tất cả đơn hàng của khách hàng đó cũng bị xóa theo, bạn sẽ thiết lập tùy chọn nào cho Khóa ngoài `MaKH` trong bảng `DON_HANG`?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 05

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 05 đượ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 mô hình cơ sở dữ liệu quan hệ, Khóa ngoài (Foreign Key) được sử dụng với mục đích chính nào sau đây?

  • A. Đảm bảo mỗi bản ghi trong bảng là duy nhất.
  • B. Tăng tốc độ tìm kiếm dữ liệu trong bảng.
  • C. Thiết lập mối quan hệ giữa hai bảng và duy trì tính toàn vẹn tham chiếu.
  • D. Xác định thứ tự hiển thị các bản ghi.

Câu 2: Giả sử bạn có hai bảng: `LopHoc` (Mã lớp, Tên lớp) và `HocSinh` (Mã học sinh, Tên học sinh, Mã lớp). Để thể hiện rằng mỗi học sinh thuộc về một lớp học, bạn cần thiết lập khóa ngoài như thế nào?

  • A. `Mã lớp` trong bảng `LopHoc` là khóa ngoài tham chiếu đến `Mã lớp` trong bảng `HocSinh`.
  • B. `Mã lớp` trong bảng `HocSinh` là khóa ngoài tham chiếu đến `Mã lớp` trong bảng `LopHoc`.
  • C. `Mã học sinh` trong bảng `HocSinh` là khóa ngoài tham chiếu đến `Mã lớp` trong bảng `LopHoc`.
  • D. `Mã lớp` trong cả hai bảng đều là khóa chính.

Câu 3: Khi thiết lập khóa ngoài, kiểu dữ liệu của trường khóa ngoài ở bảng con (bảng chứa khóa ngoài) phải như thế nào so với kiểu dữ liệu của trường được tham chiếu ở bảng cha (bảng chứa khóa chính/duy nhất)?

  • A. Phải giống hoặc tương thích về kiểu dữ liệu.
  • B. Không cần giống kiểu dữ liệu.
  • C. Phải khác hoàn toàn về kiểu dữ liệu.
  • D. Kiểu dữ liệu của khóa ngoài phải là chuỗi (VARCHAR).

Câu 4: Bảng nào được gọi là "bảng cha" (parent table) trong mối quan hệ khóa ngoài?

  • A. Bảng chứa trường được thiết lập làm khóa ngoài.
  • B. Bảng có nhiều bản ghi hơn.
  • C. Bảng được tạo ra sau.
  • D. Bảng chứa khóa chính hoặc khóa duy nhất mà khóa ngoài tham chiếu đến.

Câu 5: Điều kiện nào sau đây là bắt buộc để có thể thiết lập một trường làm khóa ngoài tham chiếu đến một bảng khác?

  • A. Trường ở bảng cha phải có kiểu dữ liệu là INT.
  • B. Trường ở bảng con phải có giá trị NULL.
  • C. Trường được tham chiếu ở bảng cha phải là khóa chính hoặc khóa duy nhất (UNIQUE KEY).
  • D. Tên của trường khóa ngoài phải giống tên trường được tham chiếu.

Câu 6: Giả sử bạn có bảng `DonHang` (Mã đơn hàng, Ngày đặt, Mã khách hàng) và bảng `KhachHang` (Mã khách hàng, Tên khách hàng). `Mã khách hàng` trong bảng `KhachHang` là khóa chính. Nếu bạn muốn thêm một đơn hàng mới vào bảng `DonHang` với `Mã khách hàng` là "KH005", nhưng trong bảng `KhachHang` không tồn tại khách hàng nào có `Mã khách hàng` là "KH005". Điều gì sẽ xảy ra nếu `Mã khách hàng` trong bảng `DonHang` được thiết lập là khóa ngoài tham chiếu đến `KhachHang`?

  • A. Hệ quản trị cơ sở dữ liệu sẽ báo lỗi và từ chối thêm bản ghi đơn hàng này.
  • B. Bản ghi đơn hàng sẽ được thêm vào, nhưng trường `Mã khách hàng` sẽ bị để trống (NULL).
  • C. Hệ thống sẽ tự động tạo một khách hàng mới với `Mã khách hàng` là "KH005" trong bảng `KhachHang`.
  • D. Bản ghi đơn hàng sẽ được thêm vào mà không có vấn đề gì.

Câu 7: Trong giao diện làm việc với cơ sở dữ liệu (ví dụ: phpMyAdmin), khi tạo bảng, thao tác nào thường được sử dụng để thêm một trường (cột) mới vào định nghĩa bảng?

  • A. Nhấn phím Delete.
  • B. Nhấn phím Insert hoặc sử dụng tùy chọn "Add column".
  • C. Kéo và thả từ bảng khác.
  • D. Chỉ có thể thêm trường khi bảng chưa có dữ liệu.

Câu 8: Giả sử bảng `SanPham` (Mã SP, Tên SP, Mã loại) và bảng `LoaiSP` (Mã loại, Tên loại). `Mã loại` trong `LoaiSP` là khóa chính. `Mã loại` trong `SanPham` là khóa ngoài tham chiếu đến `LoaiSP`. Nếu bạn xóa một bản ghi trong bảng `LoaiSP` mà `Mã loại` đó vẫn còn được sử dụng trong một số bản ghi của bảng `SanPham`, điều gì có khả năng xảy ra nhất theo mặc định của hệ quản trị CSDL (ví dụ: MySQL)?

  • A. Hệ thống sẽ báo lỗi và không cho phép xóa bản ghi loại sản phẩm đó.
  • B. Các bản ghi sản phẩm liên quan sẽ tự động bị xóa theo.
  • C. Trường `Mã loại` trong các bản ghi sản phẩm liên quan sẽ được đặt giá trị NULL.
  • D. Việc xóa sẽ thành công mà không ảnh hưởng đến bảng `SanPham`.

Câu 9: Khi thiết kế cơ sở dữ liệu cho một thư viện, bạn có các bảng `Sach` (Mã sách, Tên sách, Mã tác giả) và `TacGia` (Mã tác giả, Tên tác giả). Mối quan hệ giữa hai bảng này là gì?

  • A. Một - Một (One-to-One).
  • B. Nhiều - Nhiều (Many-to-Many).
  • C. Một - Nhiều (One-to-Many).
  • D. Không có mối quan hệ nào.

Câu 10: Để thể hiện mối quan hệ Một - Nhiều (One-to-Many) giữa bảng `TacGia` và bảng `Sach` trong câu 9, bạn cần thiết lập khóa ngoài như thế nào?

  • A. Thiết lập `Mã tác giả` trong bảng `TacGia` làm khóa ngoài tham chiếu đến `Mã tác giả` trong bảng `Sach`.
  • B. Thiết lập cả `Mã tác giả` trong cả hai bảng làm khóa chính.
  • C. Thiết lập `Mã sách` trong bảng `Sach` làm khóa ngoài tham chiếu đến `Mã tác giả` trong bảng `TacGia`.
  • D. Thiết lập `Mã tác giả` trong bảng `Sach` làm khóa ngoài tham chiếu đến `Mã tác giả` trong bảng `TacGia`.

Câu 11: Vai trò của Khóa duy nhất (UNIQUE KEY) khác với Khóa chính (PRIMARY KEY) ở điểm nào khi được sử dụng làm trường tham chiếu cho khóa ngoài?

  • A. Khóa chính không cho phép giá trị NULL, trong khi Khóa duy nhất có thể cho phép một giá trị NULL duy nhất (tùy thuộc vào hệ quản trị CSDL).
  • B. Khóa chính cho phép giá trị trùng lặp, Khóa duy nhất thì không.
  • C. Một bảng chỉ có thể có Khóa duy nhất, không thể có Khóa chính.
  • D. Khóa duy nhất bắt buộc phải là trường tự động tăng (AUTO_INCREMENT).

Câu 12: Khi bạn tạo một bảng mới và định nghĩa các trường, bước nào thường đi kèm với việc thiết lập khóa chính và khóa ngoài?

  • A. Nhập dữ liệu mẫu vào bảng.
  • B. Xuất cấu trúc bảng ra file.
  • C. Chọn loại chỉ mục (Index Type) cho trường đó hoặc thiết lập ràng buộc tham chiếu.
  • D. Xóa các trường không cần thiết.

Câu 13: Giả sử bạn có bảng `Khoa` (Mã khoa, Tên khoa) và bảng `GiaoVien` (Mã GV, Tên GV, Mã khoa). Bạn đã thiết lập `Mã khoa` trong bảng `GiaoVien` làm khóa ngoài tham chiếu đến `Mã khoa` trong bảng `Khoa`. Nếu bạn cố gắng thêm một giáo viên mới với `Mã khoa` là "CNTT" nhưng không có khoa nào có `Mã khoa` "CNTT" trong bảng `Khoa`, hệ thống sẽ thực hiện hành động nào để bảo vệ tính toàn vẹn tham chiếu?

  • A. Ngăn chặn việc thêm bản ghi giáo viên này.
  • B. Tự động thêm khoa "CNTT" vào bảng `Khoa`.
  • C. Chuyển `Mã khoa` của giáo viên này thành NULL.
  • D. Thêm bản ghi giáo viên bình thường và bỏ qua lỗi.

Câu 14: Bạn cần thiết kế cơ sở dữ liệu quản lý bán hàng với các thông tin về sản phẩm và nhà cung cấp. Mỗi sản phẩm chỉ do một nhà cung cấp cung cấp, nhưng một nhà cung cấp có thể cung cấp nhiều sản phẩm. Bạn sẽ thiết lập khóa ngoài như thế nào để thể hiện mối quan hệ này giữa bảng `SanPham` và bảng `NhaCungCap`?

  • A. Thêm trường `MaSP` vào bảng `NhaCungCap` làm khóa ngoài tham chiếu đến `SanPham`.
  • B. Thêm trường `MaNCC` vào bảng `SanPham` làm khóa ngoài tham chiếu đến `NhaCungCap`.
  • C. Tạo một bảng trung gian mới liên kết `SanPham` và `NhaCungCap`.
  • D. Không cần khóa ngoài vì mối quan hệ này không cần ràng buộc.

Câu 15: Khi sử dụng giao diện đồ họa (ví dụ: trong phpMyAdmin) để tạo khóa ngoài, bạn thường phải chỉ định những thông tin gì?

  • A. Tên cơ sở dữ liệu.
  • B. Số lượng bản ghi tối đa cho phép.
  • C. Ngôn ngữ lập trình sử dụng.
  • D. Trường trong bảng hiện tại (bảng con), bảng tham chiếu (bảng cha), và trường được tham chiếu trong bảng cha.

Câu 16: Mục đích của việc sử dụng khóa DUY NHẤT (UNIQUE) trên một trường hoặc một tập hợp các trường trong một bảng là gì?

  • A. Để trường đó là khóa chính.
  • B. Để trường đó có thể chứa giá trị NULL.
  • C. Để đảm bảo các giá trị trong trường hoặc tập hợp các trường đó không bị trùng lặp.
  • D. Để tự động tăng giá trị cho trường đó.

Câu 17: Trong ngữ cảnh cơ sở dữ liệu quan hệ, "tính toàn vẹn tham chiếu" (referential integrity) được đảm bảo chủ yếu nhờ vào khái niệm nào?

  • A. Khóa chính (Primary Key).
  • B. Khóa ngoài (Foreign Key).
  • C. Kiểu dữ liệu (Data Type).
  • D. Chỉ mục (Index).

Câu 18: Giả sử bảng `SinhVien` (MaSV, TenSV, MaLop) và bảng `MonHoc` (MaMH, TenMH). Nếu bạn muốn ghi lại việc sinh viên đăng ký môn học, mối quan hệ giữa `SinhVien` và `MonHoc` là gì, và cần làm gì để thể hiện mối quan hệ này trong cơ sở dữ liệu?

  • A. Mối quan hệ Một-Nhiều; Thêm `MaSV` làm khóa ngoài vào bảng `MonHoc`.
  • B. Mối quan hệ Một-Một; Thêm `MaMH` làm khóa ngoài vào bảng `SinhVien`.
  • C. Mối quan hệ Một-Nhiều; Thêm `MaMH` làm khóa ngoài vào bảng `SinhVien`.
  • D. Mối quan hệ Nhiều-Nhiều; Tạo bảng trung gian (ví dụ: `DangKy`) chứa khóa ngoài tham chiếu đến `SinhVien` và `MonHoc`.

Câu 19: Khi bạn thiết kế một bảng, trường nào thường được chọn làm khóa chính và có thuộc tính AUTO_INCREMENT (tự động tăng)?

  • A. Trường định danh duy nhất (ID) có kiểu số nguyên.
  • B. Trường lưu tên của đối tượng.
  • C. Trường lưu ngày tháng.
  • D. Bất kỳ trường nào có kiểu dữ liệu chuỗi.

Câu 20: Xét hai bảng `HoaDon` (MaHD, NgayLapHD, MaKH) và `ChiTietHoaDon` (MaCTHD, MaHD, MaSP, SoLuong, DonGia). `MaHD` trong `HoaDon` là khóa chính. `MaCTHD` trong `ChiTietHoaDon` là khóa chính. Để liên kết chi tiết hóa đơn với hóa đơn tương ứng, bạn cần thiết lập khóa ngoài như thế nào?

  • A. `MaCTHD` trong `ChiTietHoaDon` tham chiếu đến `MaHD` trong `HoaDon`.
  • B. `MaHD` trong `HoaDon` tham chiếu đến `MaCTHD` trong `ChiTietHoaDon`.
  • C. `MaHD` trong `ChiTietHoaDon` tham chiếu đến `MaHD` trong `HoaDon`.
  • D. `MaSP` trong `ChiTietHoaDon` tham chiếu đến `MaHD` trong `HoaDon`.

Câu 21: Giả sử bạn đã tạo hai bảng `PhongBan` (MaPB, TenPB) và `NhanVien` (MaNV, TenNV, MaPB) và thiết lập `MaPB` trong `NhanVien` làm khóa ngoài tham chiếu đến `MaPB` trong `PhongBan`. Nếu bạn cố gắng xóa một phòng ban khỏi bảng `PhongBan` mà phòng ban đó vẫn có nhân viên trong bảng `NhanVien`, điều gì sẽ xảy ra nếu ràng buộc khóa ngoài có hành động ON DELETE RESTRICT (hạn chế xóa)?

  • A. Tất cả nhân viên thuộc phòng ban đó sẽ bị xóa.
  • B. Hệ thống sẽ từ chối yêu cầu xóa phòng ban.
  • C. Trường `MaPB` của các nhân viên thuộc phòng ban đó sẽ được đặt giá trị NULL.
  • D. Phòng ban sẽ bị xóa, nhưng các nhân viên vẫn giữ nguyên `MaPB` cũ.

Câu 22: Trong quá trình tạo bảng bằng giao diện đồ họa, sau khi đã định nghĩa các trường và kiểu dữ liệu, bước tiếp theo quan trọng để hoàn tất việc tạo bảng là gì?

  • A. Nhập ngay dữ liệu vào bảng.
  • B. Đóng cửa sổ làm việc.
  • C. Sao chép cấu trúc bảng.
  • D. Lưu cấu trúc bảng đã định nghĩa.

Câu 23: Khi thiết kế cơ sở dữ liệu, việc xác định và thiết lập các mối quan hệ giữa các bảng bằng khóa ngoài giúp ích gì?

  • A. Giảm thiểu sự dư thừa dữ liệu và đảm bảo tính nhất quán.
  • B. Làm cho kích thước cơ sở dữ liệu lớn hơn.
  • C. Chỉ có ích cho việc hiển thị dữ liệu.
  • D. Làm cho việc truy vấn dữ liệu phức tạp hơn.

Câu 24: Giả sử bạn có bảng `QuocGia` (MaQG, TenQG) và bảng `ThanhPho` (MaTP, TenTP, MaQG). `MaQG` trong `QuocGia` là khóa chính. `MaQG` trong `ThanhPho` là khóa ngoài tham chiếu đến `QuocGia`. Nếu bạn muốn thêm một thành phố mới vào bảng `ThanhPho`, giá trị của trường `MaQG` trong bản ghi thành phố mới phải tuân theo quy tắc nào?

  • A. Phải là một số nguyên bất kỳ.
  • B. Phải khác với tất cả các `MaQG` đã tồn tại trong bảng `ThanhPho`.
  • C. Phải tồn tại là một giá trị `MaQG` trong bảng `QuocGia`.
  • D. Phải là một chuỗi ký tự duy nhất.

Câu 25: Trong phpMyAdmin, khi bạn vào phần "Structure" (Cấu trúc) của một bảng và muốn xem các ràng buộc khóa ngoài đã thiết lập, bạn thường tìm kiếm thông tin này ở đâu?

  • A. Phần "Relation view" hoặc "Foreign key constraints".
  • B. Phần "Indexes".
  • C. Phần "Operations".
  • D. Phần "Browse".

Câu 26: Phân tích cấu trúc bảng `Sach` (MaSach PK, TenSach, NamXuatBan, MaTacGia FK) và `TacGia` (MaTacGia PK, TenTacGia). Quan hệ khóa ngoài ở đây được thiết lập từ bảng nào đến bảng nào?

  • A. Từ `TacGia` đến `Sach`.
  • B. Từ `Sach` đến `TacGia`.
  • C. Không có quan hệ khóa ngoài.
  • D. Cả hai bảng tham chiếu lẫn nhau.

Câu 27: Giả sử bạn có bảng `NhanVien` (MaNV PK, TenNV, MaChucVu FK) và bảng `ChucVu` (MaChucVu PK, TenChucVu). Bạn đã thiết lập khóa ngoài và muốn cập nhật `MaChucVu` cho một nhân viên từ "CV01" sang "CV02". Nếu `CV02` không tồn tại trong bảng `ChucVu`, điều gì sẽ xảy ra?

  • A. Hệ thống sẽ báo lỗi vi phạm ràng buộc khóa ngoài và từ chối cập nhật.
  • B. Giá trị `MaChucVu` của nhân viên đó sẽ được cập nhật thành NULL.
  • C. Hệ thống sẽ tự động thêm chức vụ "CV02" vào bảng `ChucVu`.
  • D. Việc cập nhật sẽ thành công mà không có vấn đề gì.

Câu 28: Khi thiết kế cơ sở dữ liệu, việc sử dụng khóa ngoài giúp tránh được tình trạng nào sau đây?

  • A. Dữ liệu bị trùng lặp trong cùng một bảng.
  • B. Không thể tìm thấy bản ghi theo khóa chính.
  • C. Có các bản ghi ở bảng con tham chiếu đến các giá trị không tồn tại ở bảng cha.
  • D. Không thể sắp xếp dữ liệu theo thứ tự mong muốn.

Câu 29: Bạn đang tạo một bảng mới trong cơ sở dữ liệu. Bạn đã thêm các trường cần thiết. Bước tiếp theo để định nghĩa khóa chính cho trường `ID` là gì?

  • A. Chọn trường `ID` và thiết lập nó làm khóa ngoài.
  • B. Chọn trường `ID` và thiết lập nó làm khóa chính (Primary Key).
  • C. Chọn trường `ID` và thiết lập nó làm khóa duy nhất (Unique Key).
  • D. Để trống phần khóa cho trường `ID`.

Câu 30: Hãy phân tích tình huống: Bạn có bảng `DonVi` (MaDV PK, TenDV) và bảng `NhanVien` (MaNV PK, TenNV, MaDV FK). Bạn muốn xóa một đơn vị khỏi bảng `DonVi`. Nếu ràng buộc khóa ngoài giữa `NhanVien` và `DonVi` được thiết lập với hành động ON DELETE CASCADE (xóa theo), điều gì sẽ xảy ra?

  • A. Các bản ghi nhân viên thuộc đơn vị đó trong bảng `NhanVien` sẽ tự động bị xóa theo.
  • B. Hệ thống sẽ từ chối yêu cầu xóa đơn vị.
  • C. Trường `MaDV` của các nhân viên thuộc đơn vị đó sẽ được đặt giá trị NULL.
  • D. Đơn vị sẽ bị xóa, nhưng các nhân viên vẫn giữ nguyên `MaDV` cũ.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, Khóa ngoài (Foreign Key) được sử dụng với mục đích chính nào sau đây?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 2: Giả sử bạn có hai bảng: `LopHoc` (Mã lớp, Tên lớp) và `HocSinh` (Mã học sinh, Tên học sinh, Mã lớp). Để thể hiện rằng mỗi học sinh thuộc về một lớp học, bạn cần thiết lập khóa ngoài như thế nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 3: Khi thiết lập khóa ngoài, kiểu dữ liệu của trường khóa ngoài ở bảng con (bảng chứa khóa ngoài) phải như thế nào so với kiểu dữ liệu của trường được tham chiếu ở bảng cha (bảng chứa khóa chính/duy nhất)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 4: Bảng nào được gọi là 'bảng cha' (parent table) trong mối quan hệ khóa ngoài?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 5: Điều kiện nào sau đây là *bắt buộc* để có thể thiết lập một trường làm khóa ngoài tham chiếu đến một bảng khác?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 6: Giả sử bạn có bảng `DonHang` (Mã đơn hàng, Ngày đặt, Mã khách hàng) và bảng `KhachHang` (Mã khách hàng, Tên khách hàng). `Mã khách hàng` trong bảng `KhachHang` là khóa chính. Nếu bạn muốn thêm một đơn hàng mới vào bảng `DonHang` với `Mã khách hàng` là 'KH005', nhưng trong bảng `KhachHang` không tồn tại khách hàng nào có `Mã khách hàng` là 'KH005'. Điều gì sẽ xảy ra nếu `Mã khách hàng` trong bảng `DonHang` được thiết lập là khóa ngoài tham chiếu đến `KhachHang`?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 7: Trong giao diện làm việc với cơ sở dữ liệu (ví dụ: phpMyAdmin), khi tạo bảng, thao tác nào thường được sử dụng để thêm một trường (cột) mới vào định nghĩa bảng?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 8: Giả sử bảng `SanPham` (Mã SP, Tên SP, Mã loại) và bảng `LoaiSP` (Mã loại, Tên loại). `Mã loại` trong `LoaiSP` là khóa chính. `Mã loại` trong `SanPham` là khóa ngoài tham chiếu đến `LoaiSP`. Nếu bạn xóa một bản ghi trong bảng `LoaiSP` mà `Mã loại` đó vẫn còn được sử dụng trong một số bản ghi của bảng `SanPham`, điều gì có khả năng xảy ra nhất theo mặc định của hệ quản trị CSDL (ví dụ: MySQL)?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 9: Khi thiết kế cơ sở dữ liệu cho một thư viện, bạn có các bảng `Sach` (Mã sách, Tên sách, Mã tác giả) và `TacGia` (Mã tác giả, Tên tác giả). Mối quan hệ giữa hai bảng này là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 10: Để thể hiện mối quan hệ Một - Nhiều (One-to-Many) giữa bảng `TacGia` và bảng `Sach` trong câu 9, bạn cần thiết lập khóa ngoài như thế nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 11: Vai trò của Khóa duy nhất (UNIQUE KEY) khác với Khóa chính (PRIMARY KEY) ở điểm nào khi được sử dụng làm trường tham chiếu cho khóa ngoài?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 12: Khi bạn tạo một bảng mới và định nghĩa các trường, bước nào thường đi kèm với việc thiết lập khóa chính và khóa ngoài?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 13: Giả sử bạn có bảng `Khoa` (Mã khoa, Tên khoa) và bảng `GiaoVien` (Mã GV, Tên GV, Mã khoa). Bạn đã thiết lập `Mã khoa` trong bảng `GiaoVien` làm khóa ngoài tham chiếu đến `Mã khoa` trong bảng `Khoa`. Nếu bạn cố gắng thêm một giáo viên mới với `Mã khoa` là 'CNTT' nhưng không có khoa nào có `Mã khoa` 'CNTT' trong bảng `Khoa`, hệ thống sẽ thực hiện hành động nào để bảo vệ tính toàn vẹn tham chiếu?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 14: Bạn cần thiết kế cơ sở dữ liệu quản lý bán hàng với các thông tin về sản phẩm và nhà cung cấp. Mỗi sản phẩm chỉ do một nhà cung cấp cung cấp, nhưng một nhà cung cấp có thể cung cấp nhiều sản phẩm. Bạn sẽ thiết lập khóa ngoài như thế nào để thể hiện mối quan hệ này giữa bảng `SanPham` và bảng `NhaCungCap`?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 15: Khi sử dụng giao diện đồ họa (ví dụ: trong phpMyAdmin) để tạo khóa ngoài, bạn thường phải chỉ định những thông tin gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 16: Mục đích của việc sử dụng khóa DUY NHẤT (UNIQUE) trên một trường hoặc một tập hợp các trường trong một bảng là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 17: Trong ngữ cảnh cơ sở dữ liệu quan hệ, 'tính toàn vẹn tham chiếu' (referential integrity) được đảm bảo chủ yếu nhờ vào khái niệm nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 18: Giả sử bảng `SinhVien` (MaSV, TenSV, MaLop) và bảng `MonHoc` (MaMH, TenMH). Nếu bạn muốn ghi lại việc sinh viên đăng ký môn học, mối quan hệ giữa `SinhVien` và `MonHoc` là gì, và cần làm gì để thể hiện mối quan hệ này trong cơ sở dữ liệu?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 19: Khi bạn thiết kế một bảng, trường nào thường được chọn làm khóa chính và có thuộc tính AUTO_INCREMENT (tự động tăng)?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 20: Xét hai bảng `HoaDon` (MaHD, NgayLapHD, MaKH) và `ChiTietHoaDon` (MaCTHD, MaHD, MaSP, SoLuong, DonGia). `MaHD` trong `HoaDon` là khóa chính. `MaCTHD` trong `ChiTietHoaDon` là khóa chính. Để liên kết chi tiết hóa đơn với hóa đơn tương ứng, bạn cần thiết lập khóa ngoài như thế nào?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 21: Giả sử bạn đã tạo hai bảng `PhongBan` (MaPB, TenPB) và `NhanVien` (MaNV, TenNV, MaPB) và thiết lập `MaPB` trong `NhanVien` làm khóa ngoài tham chiếu đến `MaPB` trong `PhongBan`. Nếu bạn cố gắng xóa một phòng ban khỏi bảng `PhongBan` mà phòng ban đó vẫn có nhân viên trong bảng `NhanVien`, điều gì sẽ xảy ra nếu ràng buộc khóa ngoài có hành động ON DELETE RESTRICT (hạn chế xóa)?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 22: Trong quá trình tạo bảng bằng giao diện đồ họa, sau khi đã định nghĩa các trường và kiểu dữ liệu, bước tiếp theo quan trọng để hoàn tất việc tạo bảng là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 23: Khi thiết kế cơ sở dữ liệu, việc xác định và thiết lập các mối quan hệ giữa các bảng bằng khóa ngoài giúp ích gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 24: Giả sử bạn có bảng `QuocGia` (MaQG, TenQG) và bảng `ThanhPho` (MaTP, TenTP, MaQG). `MaQG` trong `QuocGia` là khóa chính. `MaQG` trong `ThanhPho` là khóa ngoài tham chiếu đến `QuocGia`. Nếu bạn muốn thêm một thành phố mới vào bảng `ThanhPho`, giá trị của trường `MaQG` trong bản ghi thành phố mới phải tuân theo quy tắc nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 25: Trong phpMyAdmin, khi bạn vào phần 'Structure' (Cấu trúc) của một bảng và muốn xem các ràng buộc khóa ngoài đã thiết lập, bạn thường tìm kiếm thông tin này ở đâu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 26: Phân tích cấu trúc bảng `Sach` (MaSach PK, TenSach, NamXuatBan, MaTacGia FK) và `TacGia` (MaTacGia PK, TenTacGia). Quan hệ khóa ngoài ở đây được thiết lập từ bảng nào đến bảng nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 27: Giả sử bạn có bảng `NhanVien` (MaNV PK, TenNV, MaChucVu FK) và bảng `ChucVu` (MaChucVu PK, TenChucVu). Bạn đã thiết lập khóa ngoài và muốn cập nhật `MaChucVu` cho một nhân viên từ 'CV01' sang 'CV02'. Nếu `CV02` không tồn tại trong bảng `ChucVu`, điều gì sẽ xảy ra?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 28: Khi thiết kế cơ sở dữ liệu, việc sử dụng khóa ngoài giúp tránh được tình trạng nào sau đây?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 29: Bạn đang tạo một bảng mới trong cơ sở dữ liệu. Bạn đã thêm các trường cần thiết. Bước tiếp theo để định nghĩa khóa chính cho trường `ID` là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 05

Câu 30: Hãy phân tích tình huống: Bạn có bảng `DonVi` (MaDV PK, TenDV) và bảng `NhanVien` (MaNV PK, TenNV, MaDV FK). Bạn muốn xóa một đơn vị khỏi bảng `DonVi`. Nếu ràng buộc khóa ngoài giữa `NhanVien` và `DonVi` được thiết lập với hành động ON DELETE CASCADE (xóa theo), điều gì sẽ xảy ra?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 06

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 06 đượ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 thiết kế cơ sở dữ liệu quan hệ, vai trò chính của Khóa chính (Primary Key) là gì?

  • A. Để liên kết các bảng với nhau.
  • B. Để lưu trữ dữ liệu văn bản.
  • C. Để định danh duy nhất mỗi bản ghi trong một bảng và đảm bảo tính toàn vẹn thực thể.
  • D. Để sắp xếp dữ liệu theo thứ tự tăng dần.

Câu 2: Khi nào thì một trường trong bảng dữ liệu nên được xem xét để chọn làm Khóa chính?

  • A. Khi trường đó chứa thông tin cá nhân nhạy cảm.
  • B. Khi trường đó có kiểu dữ liệu là số nguyên.
  • C. Khi trường đó có thể chứa giá trị trùng lặp.
  • D. Khi giá trị của trường đó là duy nhất cho mỗi bản ghi và không bao giờ thay đổi.

Câu 3: Khóa ngoài (Foreign Key) trong cơ sở dữ liệu quan hệ có chức năng chính là gì?

  • A. Đảm bảo tất cả các trường trong bảng đều có giá trị.
  • B. Thiết lập và duy trì mối quan hệ giữa các bảng, đảm bảo tính toàn vẹn tham chiếu.
  • C. Tăng tốc độ truy vấn dữ liệu.
  • D. Ngăn chặn việc xóa bảng.

Câu 4: Trong mối quan hệ Một-nhiều (One-to-Many) giữa hai bảng A và B (một bản ghi ở A tương ứng với nhiều bản ghi ở B), Khóa ngoài thường được đặt ở bảng nào?

  • A. Bảng B (bảng "nhiều").
  • B. Bảng A (bảng "một").
  • C. Cả hai bảng A và B.
  • D. Một bảng thứ ba được tạo ra để liên kết A và B.

Câu 5: Khi khai báo Khóa ngoài, trường Khóa ngoài ở bảng con (bảng chứa FK) phải có kiểu dữ liệu và kích thước như thế nào so với trường Khóa chính ở bảng cha (bảng được tham chiếu)?

  • A. Hoàn toàn khác biệt.
  • B. Giống nhau về kích thước nhưng khác kiểu dữ liệu.
  • C. Giống nhau về kiểu dữ liệu và kích thước.
  • D. Không quan trọng, miễn là tên trường giống nhau.

Câu 6: Xét hai bảng `LopHoc` (MaLop - PK, TenLop) và `HocSinh` (MaHS - PK, TenHS, MaLop). Để thể hiện rằng mỗi học sinh thuộc về một lớp học, trường nào trong bảng `HocSinh` sẽ được khai báo làm Khóa ngoài tham chiếu đến bảng `LopHoc`?

  • A. MaHS.
  • B. MaLop.
  • C. TenHS.
  • D. TenLop.

Câu 7: Trong ví dụ về bảng `LopHoc` và `HocSinh` ở câu trên, nếu bạn cố gắng thêm một bản ghi vào bảng `HocSinh` với giá trị `MaLop` không tồn tại trong bảng `LopHoc`, điều gì sẽ xảy ra (với ràng buộc Khóa ngoài được thiết lập)?

  • A. Hệ quản trị cơ sở dữ liệu sẽ báo lỗi và từ chối thao tác thêm.
  • B. Bản ghi sẽ được thêm thành công nhưng trường `MaLop` sẽ có giá trị NULL.
  • C. Bản ghi sẽ được thêm thành công và một lớp học mới sẽ được tạo tự động trong bảng `LopHoc`.
  • D. Hệ thống sẽ tự động gán một giá trị `MaLop` hợp lệ.

Câu 8: Thuộc tính `AUTO_INCREMENT` (hoặc tương đương) thường được sử dụng cho trường nào trong thiết kế bảng, đặc biệt là khi trường đó được chọn làm Khóa chính?

  • A. Trường Khóa chính có kiểu số nguyên.
  • B. Trường Khóa ngoài có kiểu văn bản.
  • C. Bất kỳ trường nào cần lưu trữ ngày tháng.
  • D. Trường chứa giá trị có thể trùng lặp.

Câu 9: Mục đích của việc sử dụng ràng buộc `UNIQUE` cho một trường hoặc một tập hợp các trường trong bảng là gì?

  • A. Đảm bảo trường đó không chứa giá trị NULL.
  • B. Thiết lập mối quan hệ với bảng khác.
  • C. Tự động tăng giá trị khi thêm bản ghi mới.
  • D. Đảm bảo rằng tất cả các giá trị trong trường (hoặc tập hợp trường) đó là duy nhất trong toàn bộ bảng.

Câu 10: Trong một bảng `SanPham` (MaSP - PK, TenSP, MaLoaiSP - FK tham chiếu LoaiSP), nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE CASCADE`, điều gì sẽ xảy ra khi một bản ghi trong bảng `LoaiSP` bị xóa?

  • A. Hệ thống sẽ báo lỗi và không cho phép xóa bản ghi trong `LoaiSP`.
  • B. Tất cả các bản ghi trong bảng `SanPham` có `MaLoaiSP` tương ứng sẽ bị xóa theo.
  • C. Trường `MaLoaiSP` trong các bản ghi tương ứng của bảng `SanPham` sẽ được đặt thành NULL.
  • D. Không có gì xảy ra với bảng `SanPham`.

Câu 11: Trong một hệ quản trị cơ sở dữ liệu (DBMS), việc tạo Khóa chính và Khóa ngoài giúp hệ thống thực thi điều gì?

  • A. Các ràng buộc toàn vẹn dữ liệu (như toàn vẹn thực thể và toàn vẹn tham chiếu).
  • B. Quyền truy cập của người dùng.
  • C. Tự động sao lưu dữ liệu.
  • D. Mã hóa dữ liệu trong bảng.

Câu 12: Khi thiết kế bảng `DonHang` cần tham chiếu đến bảng `KhachHang` (có Khóa chính là `MaKH`), trường nào trong bảng `DonHang` sẽ đóng vai trò là Khóa ngoài để liên kết hai bảng này?

  • A. Một trường mới tên là `MaDonHang` làm Khóa chính của bảng `DonHang`.
  • B. Một trường bất kỳ trong bảng `DonHang` có cùng tên với `MaKH`.
  • C. Không cần Khóa ngoài nếu tên bảng khác nhau.
  • D. Một trường (ví dụ: `MaKH`) trong bảng `DonHang` có giá trị tham chiếu đến `MaKH` trong bảng `KhachHang`.

Câu 13: Trong phần mềm quản lý cơ sở dữ liệu, thao tác nào thường được thực hiện sau khi đã định nghĩa cấu trúc các trường (tên, kiểu dữ liệu, kích thước) cho một bảng?

  • A. Nhập dữ liệu mẫu vào bảng.
  • B. Xóa bảng vừa tạo.
  • C. Khai báo Khóa chính và Khóa ngoài (nếu có) cho bảng.
  • D. Tạo báo cáo từ bảng.

Câu 14: Mối quan hệ Nhiều-nhiều (Many-to-Many) giữa hai bảng A và B (ví dụ: Sinh viên và Môn học) không thể được biểu diễn trực tiếp bằng Khóa ngoài đơn lẻ. Phương pháp phổ biến để mô hình hóa mối quan hệ này trong cơ sở dữ liệu quan hệ là gì?

  • A. Tạo một bảng trung gian (linking table) chứa Khóa ngoài tham chiếu đến Khóa chính của cả bảng A và bảng B.
  • B. Thêm Khóa chính của bảng A vào bảng B và Khóa chính của bảng B vào bảng A.
  • C. Sử dụng một trường kiểu văn bản để lưu trữ danh sách các ID liên quan.
  • D. Chỉ cần tạo Khóa chính cho cả hai bảng A và B mà không cần Khóa ngoài.

Câu 15: Giả sử bạn có bảng `TacGia` (MaTG - PK, TenTG) và bảng `Sach` (MaSach - PK, TenSach, MaTG - FK tham chiếu TacGia). Nếu bạn xóa một tác giả khỏi bảng `TacGia` và ràng buộc Khóa ngoài có tùy chọn `ON DELETE SET NULL`, điều gì sẽ xảy ra với các bản ghi trong bảng `Sach` có `MaTG` của tác giả đó?

  • A. Các bản ghi sách đó cũng bị xóa theo.
  • B. Hệ thống báo lỗi và không cho xóa tác giả.
  • C. Các bản ghi sách đó không thay đổi.
  • D. Trường `MaTG` trong các bản ghi sách đó sẽ được đặt giá trị là NULL.

Câu 16: Thuộc tính `NOT NULL` khi áp dụng cho một trường có ý nghĩa gì?

  • A. Giá trị của trường đó phải là duy nhất.
  • B. Trường đó bắt buộc phải có giá trị khi thêm hoặc cập nhật bản ghi.
  • C. Giá trị của trường đó sẽ tự động tăng.
  • D. Trường đó chỉ có thể chứa giá trị số.

Câu 17: Trong ngữ cảnh tạo bảng, việc chọn kiểu dữ liệu `INT` (Integer) cho trường Khóa chính hoặc Khóa ngoài tham chiếu đến Khóa chính kiểu `INT` là phù hợp vì lý do gì?

  • A. Kiểu `INT` chiếm nhiều dung lượng lưu trữ nhất.
  • B. Kiểu `INT` cho phép lưu trữ giá trị văn bản.
  • C. Kiểu `INT` hiệu quả cho việc so sánh, tìm kiếm và thường được kết hợp với `AUTO_INCREMENT` để tạo mã định danh duy nhất.
  • D. Kiểu `INT` là kiểu dữ liệu mặc định cho mọi trường.

Câu 18: Khi thiết kế cơ sở dữ liệu cho một hệ thống quản lý thư viện, bạn cần hai bảng: `DocGia` (lưu thông tin độc giả) và `SachMuon` (lưu thông tin các lượt mượn sách). Mỗi lượt mượn sách liên quan đến một độc giả và một quyển sách cụ thể. Mối quan hệ giữa `DocGia` và `SachMuon` là gì?

  • A. Một-nhiều (One-to-Many): Một độc giả có thể có nhiều lượt mượn sách.
  • B. Nhiều-một (Many-to-One): Nhiều độc giả cùng mượn một lượt sách.
  • C. Một-một (One-to-One): Mỗi độc giả chỉ có một lượt mượn sách.
  • D. Nhiều-nhiều (Many-to-Many): Nhiều độc giả mượn nhiều sách trong nhiều lượt khác nhau (đòi hỏi bảng trung gian khác).

Câu 19: Trong tình huống ở câu trên (`DocGia` và `SachMuon`), Khóa ngoài nên được đặt ở bảng nào để thể hiện mối quan hệ?

  • A. Bảng `DocGia`.
  • B. Bảng `SachMuon` (chứa Khóa ngoài tham chiếu đến `DocGia`).
  • C. Cả hai bảng.
  • D. Không cần Khóa ngoài.

Câu 20: Bạn đang thiết kế bảng `ChiTietDonHang` để lưu các mặt hàng trong một đơn hàng. Bảng này cần liên kết với bảng `DonHang` (để biết chi tiết thuộc đơn hàng nào) và bảng `SanPham` (để biết mặt hàng là gì). Bảng `ChiTietDonHang` sẽ có những Khóa ngoài nào?

  • A. Chỉ có Khóa ngoài tham chiếu đến `DonHang`.
  • B. Chỉ có Khóa ngoài tham chiếu đến `SanPham`.
  • C. Cả Khóa ngoài tham chiếu đến `DonHang` và Khóa ngoài tham chiếu đến `SanPham`.
  • D. Không cần Khóa ngoài vì đây là bảng chi tiết.

Câu 21: Xét bảng `NhanVien` (MaNV - PK, TenNV, MaPhongBan - FK tham chiếu PhongBan) và bảng `PhongBan` (MaPB - PK, TenPB). Nếu ràng buộc Khóa ngoài có tùy chọn `ON UPDATE CASCADE`, điều gì sẽ xảy ra khi giá trị `MaPB` trong bảng `PhongBan` bị thay đổi?

  • A. Giá trị `MaPhongBan` tương ứng trong các bản ghi của bảng `NhanVien` sẽ tự động được cập nhật theo.
  • B. Hệ thống báo lỗi và không cho phép cập nhật `MaPB`.
  • C. Giá trị `MaPhongBan` trong bảng `NhanVien` sẽ được đặt thành NULL.
  • D. Không có gì xảy ra với bảng `NhanVien`.

Câu 22: Việc sử dụng Khóa ngoài giúp ngăn chặn những loại lỗi dữ liệu nào phổ biến?

  • A. Lỗi chính tả trong tên trường.
  • B. Lỗi định dạng ngày tháng.
  • C. Lỗi trùng lặp giá trị trong Khóa chính.
  • D. Lỗi tham chiếu đến dữ liệu không tồn tại ở bảng cha (ví dụ: một đơn hàng của khách hàng không có thật).

Câu 23: Trong quá trình tạo bảng bằng giao diện đồ họa của phần mềm quản lý CSDL, bước nào sau đây là cần thiết để thiết lập mối liên kết giữa hai bảng thông qua Khóa ngoài?

  • A. Chỉ cần đặt tên trường Khóa ngoài giống với tên trường Khóa chính ở bảng cha.
  • B. Chọn trường sẽ làm Khóa ngoài, sau đó chỉ định bảng và trường Khóa chính mà nó tham chiếu đến.
  • C. Chỉ cần đảm bảo hai trường có cùng kiểu dữ liệu.
  • D. Tạo chỉ mục (Index) cho trường Khóa ngoài.

Câu 24: Một bảng có thể có bao nhiêu Khóa chính?

  • A. Chỉ một (có thể là một trường hoặc tập hợp các trường).
  • B. Nhiều hơn một.
  • C. Không giới hạn số lượng.
  • D. Tùy thuộc vào số lượng Khóa ngoài.

Câu 25: Một bảng có thể có bao nhiêu Khóa ngoài?

  • A. Chỉ một.
  • B. Tối đa hai.
  • C. Bằng số lượng Khóa chính của bảng khác.
  • D. Nhiều hơn một, tùy thuộc vào số lượng mối quan hệ cần thiết với các bảng khác.

Câu 26: Trong một cơ sở dữ liệu quản lý bán hàng, bảng `HoaDon` (MaHD - PK, NgayHD, MaKH - FK) và bảng `KhachHang` (MaKH - PK, TenKH). Khi bạn tạo một bản ghi `HoaDon` mới, giá trị của trường `MaKH` trong `HoaDon` phải tuân thủ điều kiện gì?

  • A. Phải là duy nhất trong bảng `HoaDon`.
  • B. Phải tồn tại như một giá trị `MaKH` trong bảng `KhachHang`.
  • C. Phải lớn hơn giá trị `MaHD`.
  • D. Có thể là bất kỳ giá trị nào.

Câu 27: Giả sử bạn có bảng `MonHoc` (MaMH - PK, TenMH) và bảng `GiaoVien` (MaGV - PK, TenGV). Để thể hiện rằng mỗi môn học được dạy bởi một giáo viên, bạn sẽ thêm Khóa ngoài vào bảng nào và tham chiếu đến bảng nào?

  • A. Thêm Khóa ngoài trong `GiaoVien` tham chiếu đến `MonHoc`.
  • B. Thêm Khóa ngoài trong cả hai bảng, tham chiếu lẫn nhau.
  • C. Thêm Khóa ngoài (ví dụ: `MaGV`) trong `MonHoc` tham chiếu đến `GiaoVien`.
  • D. Không cần Khóa ngoài, chỉ cần tạo một bảng trung gian.

Câu 28: Khi một trường được chọn làm Khóa chính, thuộc tính nào sau đây thường được áp dụng tự động (hoặc nên được áp dụng) cho trường đó bởi hệ quản trị CSDL?

  • A. AUTO_INCREMENT (luôn luôn).
  • B. NULL (cho phép giá trị rỗng).
  • C. Mặc định là 0.
  • D. NOT NULL (không cho phép giá trị rỗng).

Câu 29: Bạn có hai bảng `QuocGia` (MaQG - PK, TenQG) và `ThanhPho` (MaTP - PK, TenTP, MaQG - FK tham chiếu QuocGia). Nếu bạn muốn đảm bảo rằng khi một quốc gia bị xóa, tất cả các thành phố thuộc quốc gia đó cũng bị xóa theo, bạn sẽ thiết lập tùy chọn nào cho ràng buộc Khóa ngoài `MaQG` trong bảng `ThanhPho` khi xảy ra thao tác DELETE?

  • A. ON DELETE CASCADE.
  • B. ON DELETE SET NULL.
  • C. ON DELETE RESTRICT.
  • D. ON DELETE NO ACTION.

Câu 30: Trong thiết kế cơ sở dữ liệu, việc tạo chỉ mục (Index) cho trường Khóa ngoài có lợi ích gì?

  • A. Ngăn chặn giá trị trùng lặp trong trường Khóa ngoài.
  • B. Đảm bảo tính toàn vẹn tham chiếu (điều này do Khóa ngoài đảm nhiệm).
  • C. Cải thiện hiệu suất của các thao tác JOIN (kết nối) giữa bảng chứa Khóa ngoài và bảng được tham chiếu.
  • D. Tự động tạo giá trị cho trường Khóa ngoài.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong thiết kế cơ sở dữ liệu quan hệ, vai trò chính của Khóa chính (Primary Key) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khi nào thì một trường trong bảng dữ liệu nên được xem xét để chọn làm Khóa chính?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khóa ngoài (Foreign Key) trong cơ sở dữ liệu quan hệ có chức năng chính là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong mối quan hệ Một-nhiều (One-to-Many) giữa hai bảng A và B (một bản ghi ở A tương ứng với nhiều bản ghi ở B), Khóa ngoài thường được đặt ở bảng nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khi khai báo Khóa ngoài, trường Khóa ngoài ở bảng con (bảng chứa FK) phải có kiểu dữ liệu và kích thước như thế nào so với trường Khóa chính ở bảng cha (bảng được tham chiếu)?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Xét hai bảng `LopHoc` (MaLop - PK, TenLop) và `HocSinh` (MaHS - PK, TenHS, MaLop). Để thể hiện rằng mỗi học sinh thuộc về một lớp học, trường nào trong bảng `HocSinh` sẽ được khai báo làm Khóa ngoài tham chiếu đến bảng `LopHoc`?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong ví dụ về bảng `LopHoc` và `HocSinh` ở câu trên, nếu bạn cố gắng thêm một bản ghi vào bảng `HocSinh` với giá trị `MaLop` không tồn tại trong bảng `LopHoc`, điều gì sẽ xảy ra (với ràng buộc Khóa ngoài được thiết lập)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Thuộc tính `AUTO_INCREMENT` (hoặc tương đương) thường được sử dụng cho trường nào trong thiết kế bảng, đặc biệt là khi trường đó được chọn làm Khóa chính?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Mục đích của việc sử dụng ràng buộc `UNIQUE` cho một trường hoặc một tập hợp các trường trong bảng là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong một bảng `SanPham` (MaSP - PK, TenSP, MaLoaiSP - FK tham chiếu LoaiSP), nếu ràng buộc Khóa ngoài được thiết lập với tùy chọn `ON DELETE CASCADE`, điều gì sẽ xảy ra khi một bản ghi trong bảng `LoaiSP` bị xóa?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong một hệ quản trị cơ sở dữ liệu (DBMS), việc tạo Khóa chính và Khóa ngoài giúp hệ thống thực thi điều gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khi thiết kế bảng `DonHang` cần tham chiếu đến bảng `KhachHang` (có Khóa chính là `MaKH`), trường nào trong bảng `DonHang` sẽ đóng vai trò là Khóa ngoài để liên kết hai bảng này?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong phần mềm quản lý cơ sở dữ liệu, thao tác nào thường được thực hiện sau khi đã định nghĩa cấu trúc các trường (tên, kiểu dữ liệu, kích thước) cho một bảng?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Mối quan hệ Nhiều-nhiều (Many-to-Many) giữa hai bảng A và B (ví dụ: Sinh viên và Môn học) không thể được biểu diễn trực tiếp bằng Khóa ngoài đơn lẻ. Phương pháp phổ biến để mô hình hóa mối quan hệ này trong cơ sở dữ liệu quan hệ là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Giả sử bạn có bảng `TacGia` (MaTG - PK, TenTG) và bảng `Sach` (MaSach - PK, TenSach, MaTG - FK tham chiếu TacGia). Nếu bạn xóa một tác giả khỏi bảng `TacGia` và ràng buộc Khóa ngoài có tùy chọn `ON DELETE SET NULL`, điều gì sẽ xảy ra với các bản ghi trong bảng `Sach` có `MaTG` của tác giả đó?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Thuộc tính `NOT NULL` khi áp dụng cho một trường có ý nghĩa gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong ngữ cảnh tạo bảng, việc chọn kiểu dữ liệu `INT` (Integer) cho trường Khóa chính hoặc Khóa ngoài tham chiếu đến Khóa chính kiểu `INT` là phù hợp vì lý do gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khi thiết kế cơ sở dữ liệu cho một hệ thống quản lý thư viện, bạn cần hai bảng: `DocGia` (lưu thông tin độc giả) và `SachMuon` (lưu thông tin các lượt mượn sách). Mỗi lượt mượn sách liên quan đến một độc giả và một quyển sách cụ thể. Mối quan hệ giữa `DocGia` và `SachMuon` là gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong tình huống ở câu trên (`DocGia` và `SachMuon`), Khóa ngoài nên được đặt ở bảng nào để thể hiện mối quan hệ?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Bạn đang thiết kế bảng `ChiTietDonHang` để lưu các mặt hàng trong một đơn hàng. Bảng này cần liên kết với bảng `DonHang` (để biết chi tiết thuộc đơn hàng nào) và bảng `SanPham` (để biết mặt hàng là gì). Bảng `ChiTietDonHang` sẽ có những Khóa ngoài nào?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Xét bảng `NhanVien` (MaNV - PK, TenNV, MaPhongBan - FK tham chiếu PhongBan) và bảng `PhongBan` (MaPB - PK, TenPB). Nếu ràng buộc Khóa ngoài có tùy chọn `ON UPDATE CASCADE`, điều gì sẽ xảy ra khi giá trị `MaPB` trong bảng `PhongBan` bị thay đổi?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Việc sử dụng Khóa ngoài giúp ngăn chặn những loại lỗi dữ liệu nào phổ biến?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong quá trình tạo bảng bằng giao diện đồ họa của phần mềm quản lý CSDL, bước nào sau đây là cần thiết để thiết lập mối liên kết giữa hai bảng thông qua Khóa ngoài?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Một bảng có thể có bao nhiêu Khóa chính?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Một bảng có thể có bao nhiêu Khóa ngoài?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong một cơ sở dữ liệu quản lý bán hàng, bảng `HoaDon` (MaHD - PK, NgayHD, MaKH - FK) và bảng `KhachHang` (MaKH - PK, TenKH). Khi bạn tạo một bản ghi `HoaDon` mới, giá trị của trường `MaKH` trong `HoaDon` phải tuân thủ điều kiện gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Giả sử bạn có bảng `MonHoc` (MaMH - PK, TenMH) và bảng `GiaoVien` (MaGV - PK, TenGV). Để thể hiện rằng mỗi môn học được dạy bởi một giáo viên, bạn sẽ thêm Khóa ngoài vào bảng nào và tham chiếu đến bảng nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Khi một trường được chọn làm Khóa chính, thuộc tính nào sau đây thường được áp dụng tự động (hoặc nên được áp dụng) cho trường đó bởi hệ quản trị CSDL?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Bạn có hai bảng `QuocGia` (MaQG - PK, TenQG) và `ThanhPho` (MaTP - PK, TenTP, MaQG - FK tham chiếu QuocGia). Nếu bạn muốn đảm bảo rằng khi một quốc gia bị xóa, tất cả các thành phố thuộc quốc gia đó cũng bị xóa theo, bạn sẽ thiết lập tùy chọn nào cho ràng buộc Khóa ngoài `MaQG` trong bảng `ThanhPho` khi xảy ra thao tác DELETE?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 06

Trong thiết kế cơ sở dữ liệu, việc tạo chỉ mục (Index) cho trường Khóa ngoài có lợi ích gì?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 07

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 07 đượ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 mô hình cơ sở dữ liệu quan hệ, khái niệm nào được sử dụng để thiết lập mối liên kết giữa hai bảng và đảm bảo tính toàn vẹn tham chiếu?

  • A. Khóa chính (Primary Key)
  • B. Khóa ứng viên (Candidate Key)
  • C. Khóa ngoài (Foreign Key)
  • D. Chỉ mục (Index)

Câu 2: Khi thiết kế cơ sở dữ liệu cho một thư viện, có hai bảng là `Sach` (thông tin sách) và `MuonSach` (thông tin lượt mượn). Bảng `Sach` có khóa chính là `MaSach`. Bảng `MuonSach` cần lưu thông tin sách nào được mượn. Để liên kết `MuonSach` với `Sach` một cách đúng đắn, bạn cần thêm trường nào vào bảng `MuonSach` và thiết lập nó là loại khóa gì?

  • A. Thêm trường `MaSach` làm Khóa chính vào bảng `MuonSach`.
  • B. Thêm trường `MaMuon` làm Khóa ngoài vào bảng `MuonSach`.
  • C. Thêm trường `MaSach` làm Khóa duy nhất (Unique Key) vào bảng `MuonSach`.
  • D. Thêm trường `MaSach` làm Khóa ngoài (Foreign Key) vào bảng `MuonSach`.

Câu 3: Giả sử bạn có hai bảng: `KhachHang` (có `MaKH` là Khóa chính) và `DonHang` (có `MaDH` là Khóa chính và `MaKH` là Khóa ngoài tham chiếu đến bảng `KhachHang`). Khi bạn cố gắng thêm một bản ghi mới vào bảng `DonHang` với giá trị `MaKH` không tồn tại trong bảng `KhachHang`, hệ quản trị cơ sở dữ liệu sẽ thực hiện hành động mặc định nào (nếu không có ràng buộc ON INSERT được chỉ định)?

  • A. Từ chối thao tác thêm bản ghi đó.
  • B. Tự động thêm một bản ghi mới vào bảng `KhachHang` với `MaKH` được cung cấp.
  • C. Đặt giá trị `MaKH` trong bản ghi mới của `DonHang` thành NULL.
  • D. Cho phép thêm bản ghi nhưng đánh dấu nó là không hợp lệ.

Câu 4: Trường dùng làm Khóa ngoài trong một bảng phải có kiểu dữ liệu như thế nào so với trường Khóa chính mà nó tham chiếu ở bảng khác?

  • A. Luôn phải là kiểu INT.
  • B. Phải có cùng kiểu dữ liệu hoặc kiểu dữ liệu tương thích.
  • C. Có thể có kiểu dữ liệu bất kỳ.
  • D. Phải có kiểu dữ liệu khác với Khóa chính.

Câu 5: Xét hai bảng `LopHoc` (có `MaLop` là Khóa chính) và `SinhVien` (có `MaSV` là Khóa chính). Mỗi sinh viên thuộc về một lớp học. Để thể hiện mối quan hệ này, bạn cần thêm Khóa ngoài vào bảng nào và trường nào sẽ làm Khóa ngoài?

  • A. Thêm Khóa ngoài là `MaLop` vào bảng `SinhVien`.
  • B. Thêm Khóa ngoài là `MaSV` vào bảng `LopHoc`.
  • C. Thêm Khóa ngoài là `MaLop` vào cả hai bảng `LopHoc` và `SinhVien`.
  • D. Không cần Khóa ngoài, chỉ cần liên kết bằng tên trường.

Câu 6: Khi định nghĩa một Khóa ngoài, bạn có thể chỉ định hành động sẽ xảy ra khi bản ghi được tham chiếu (bản ghi ở bảng có Khóa chính) bị xóa. Nếu bạn chọn hành động `ON DELETE CASCADE`, điều gì sẽ xảy ra khi một bản ghi trong bảng cha (bảng có Khóa chính) bị xóa?

  • A. Thao tác xóa sẽ bị từ chối (giống `RESTRICT`).
  • B. Giá trị Khóa ngoài trong các bản ghi liên quan ở bảng con sẽ được đặt thành NULL (nếu trường cho phép NULL).
  • C. Các bản ghi liên quan ở bảng con sẽ tự động bị xóa.
  • D. Hệ thống sẽ hỏi người dùng hành động cần thực hiện.

Câu 7: Trong giao diện đồ họa của một công cụ quản trị cơ sở dữ liệu (ví dụ: phpMyAdmin), để thiết lập Khóa ngoài cho một trường, bạn thường cần thực hiện các bước nào sau đây (không theo thứ tự)?
(1) Chọn trường sẽ làm Khóa ngoài.
(2) Chỉ định bảng và trường Khóa chính mà Khóa ngoài này tham chiếu tới.
(3) Chọn loại chỉ mục là FOREIGN KEY.
(4) Lưu lại cấu trúc bảng.

  • A. (1), (2), (3), (4)
  • B. (3), (1), (2), (4)
  • C. (1), (3), (2), (4)
  • D. (1), (3), (2), (4) - Thứ tự phổ biến là chọn trường, chọn loại index/relation (FOREIGN KEY), cấu hình chi tiết (bảng/trường tham chiếu), rồi lưu.

Câu 8: Khi nào thì một trường (hoặc tập hợp các trường) trong bảng con có thể chứa giá trị NULL nếu nó được thiết lập làm Khóa ngoài?

  • A. Khi ràng buộc `ON DELETE CASCADE` được sử dụng.
  • B. Khi trường Khóa ngoài không được khai báo là `NOT NULL`.
  • C. Khi Khóa chính ở bảng cha chứa giá trị NULL.
  • D. Khóa ngoài không bao giờ được phép chứa giá trị NULL.

Câu 9: Xét hai bảng `SanPham` (có `MaSP` là Khóa chính) và `ChiTietDonHang` (lưu thông tin từng mặt hàng trong mỗi đơn hàng, có Khóa chính là `MaCTDH`). Mỗi dòng trong `ChiTietDonHang` ứng với một sản phẩm cụ thể. Để liên kết `ChiTietDonHang` với `SanPham`, bạn cần thêm Khóa ngoài nào vào bảng `ChiTietDonHang`?

  • A. Trường `MaSP` làm Khóa ngoài trong bảng `ChiTietDonHang`.
  • B. Trường `MaCTDH` làm Khóa ngoài trong bảng `SanPham`.
  • C. Trường `MaSP` làm Khóa chính trong bảng `ChiTietDonHang`.
  • D. Trường `MaCTDH` làm Khóa ngoài trong bảng `ChiTietDonHang`.

Câu 10: Ràng buộc `ON DELETE SET NULL` trên một Khóa ngoài có ý nghĩa gì khi bản ghi Khóa chính được tham chiếu bị xóa?

  • A. Thao tác xóa bị từ chối.
  • B. Các bản ghi liên quan ở bảng con cũng bị xóa.
  • C. Không có hành động nào xảy ra với bảng con.
  • D. Giá trị của Khóa ngoài trong các bản ghi liên quan ở bảng con được đặt thành NULL.

Câu 11: Trong một cơ sở dữ liệu quản lý dự án, có hai bảng: `DuAn` (có `MaDA` là Khóa chính) và `NhanVien` (có `MaNV` là Khóa chính). Mỗi dự án có nhiều nhân viên tham gia, và một nhân viên có thể tham gia nhiều dự án. Để thể hiện mối quan hệ "nhiều-nhiều" này, người ta thường tạo một bảng trung gian là `ThamGia`. Cấu trúc cơ bản của bảng `ThamGia` cần có những trường Khóa nào?

  • A. Một Khóa chính là `MaThamGia` và một Khóa ngoài là `MaDA`.
  • B. Hai Khóa ngoài: một tham chiếu đến `MaDA` (bảng `DuAn`) và một tham chiếu đến `MaNV` (bảng `NhanVien`).
  • C. Một Khóa chính là `MaDA` và một Khóa ngoài là `MaNV`.
  • D. Chỉ cần Khóa chính là `MaThamGia`, không cần Khóa ngoài.

Câu 12: Bạn đang thiết kế cơ sở dữ liệu cho một trường học với hai bảng: `GiaoVien` (có `MaGV` là Khóa chính) và `MonHoc` (có `MaMH` là Khóa chính). Mỗi môn học được giảng dạy bởi một giáo viên, và một giáo viên có thể dạy nhiều môn. Bạn đã thêm trường `MaGV` vào bảng `MonHoc` làm Khóa ngoài tham chiếu đến bảng `GiaoVien`. Khi một giáo viên nghỉ việc (bản ghi của giáo viên đó bị xóa khỏi bảng `GiaoVien`), bạn muốn các môn học mà giáo viên đó dạy vẫn tồn tại nhưng không còn liên kết với giáo viên nào nữa. Bạn nên thiết lập ràng buộc `ON DELETE` nào cho Khóa ngoài `MaGV` trong bảng `MonHoc`?

  • A. ON DELETE CASCADE
  • B. ON DELETE SET NULL
  • C. ON DELETE RESTRICT
  • D. ON DELETE NO ACTION

Câu 13: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo chủ yếu thông qua việc sử dụng Khóa ngoài, có ý nghĩa quan trọng nhất là gì trong cơ sở dữ liệu quan hệ?

  • A. Đảm bảo mỗi bản ghi trong bảng đều là duy nhất.
  • B. Giúp tăng tốc độ truy vấn dữ liệu.
  • C. Ngăn chặn việc tham chiếu đến các bản ghi không tồn tại.
  • D. Giảm thiểu không gian lưu trữ dữ liệu.

Câu 14: Bạn có hai bảng `QuocGia` (có `MaQG` là Khóa chính) và `ThanhPho` (có `MaTP` là Khóa chính). Mỗi thành phố thuộc về một quốc gia. Để thiết lập mối quan hệ này, bạn thêm trường `MaQG` vào bảng `ThanhPho` làm Khóa ngoài. Nếu bạn thiết lập ràng buộc `ON UPDATE CASCADE` cho Khóa ngoài này, điều gì sẽ xảy ra khi bạn thay đổi giá trị `MaQG` của một quốc gia trong bảng `QuocGia`?

  • A. Giá trị `MaQG` trong tất cả các bản ghi liên quan ở bảng `ThanhPho` sẽ tự động được cập nhật theo.
  • B. Thao tác cập nhật giá trị `MaQG` trong bảng `QuocGia` sẽ bị từ chối.
  • C. Giá trị `MaQG` trong các bản ghi liên quan ở bảng `ThanhPho` sẽ được đặt thành NULL.
  • D. Các bản ghi liên quan ở bảng `ThanhPho` sẽ bị xóa.

Câu 15: Trong quá trình tạo bảng và thiết lập Khóa ngoài bằng giao diện đồ họa, sau khi đã chọn trường làm Khóa ngoài và chỉ định bảng/trường Khóa chính tham chiếu, bạn cần thực hiện thao tác nào để hoàn tất việc định nghĩa và áp dụng cấu trúc này vào cơ sở dữ liệu?

  • A. Nhấn nút "Tạo bảng mới".
  • B. Nhấn nút "Lưu" hoặc "Apply".
  • C. Nhấn nút "Xóa bảng".
  • D. Nhấn nút "Chỉnh sửa dữ liệu".

Câu 16: Một bảng có thể có bao nhiêu Khóa ngoài?

  • A. Chỉ có một.
  • B. Tối đa là hai.
  • C. Số lượng bằng số lượng Khóa chính của nó.
  • D. Có thể có nhiều Khóa ngoài.

Câu 17: Khóa chính khác Khóa duy nhất (Unique Key) ở điểm nào?

  • A. Khóa chính không cho phép giá trị NULL, còn Khóa duy nhất có thể cho phép NULL.
  • B. Khóa chính cho phép giá trị NULL, còn Khóa duy nhất thì không.
  • C. Chỉ có Khóa duy nhất mới có thể tham chiếu bởi Khóa ngoài.
  • D. Khóa chính chỉ có thể là một trường, còn Khóa duy nhất có thể là nhiều trường.

Câu 18: Khi tạo Khóa ngoài trong một bảng, trường được chọn làm Khóa ngoài bắt buộc phải là Khóa chính của bảng đó không?

  • A. Có, luôn luôn phải là Khóa chính của bảng chứa nó.
  • B. Không, Khóa ngoài tham chiếu đến Khóa chính của bảng khác.
  • C. Chỉ khi Khóa ngoài và Khóa chính có cùng tên.
  • D. Chỉ khi bảng đó không có Khóa chính.

Câu 19: Bạn có bảng `Khoa` (có `MaKhoa` là Khóa chính) và bảng `GiaoVien` (có `MaGV` là Khóa chính và `MaKhoa` là Khóa ngoài tham chiếu đến bảng `Khoa`). Khi bạn cố gắng xóa một Khoa khỏi bảng `Khoa` mà vẫn còn giáo viên thuộc Khoa đó trong bảng `GiaoVien`, hệ thống báo lỗi và không cho phép xóa. Điều này là do ràng buộc `ON DELETE` nào đang được áp dụng (thường là mặc định)?

  • A. ON DELETE RESTRICT (hoặc NO ACTION)
  • B. ON DELETE CASCADE
  • C. ON DELETE SET NULL
  • D. ON DELETE SET DEFAULT

Câu 20: Khi nào thì việc sử dụng Khóa ngoài là không cần thiết hoặc không phù hợp?

  • A. Khi các bảng có mối quan hệ 1-nhiều.
  • B. Khi cần đảm bảo dữ liệu nhất quán giữa các bảng.
  • C. Khi chỉ làm việc với một bảng duy nhất và không cần liên kết với bảng nào khác.
  • D. Khi cần mô hình hóa mối quan hệ nhiều-nhiều.

Câu 21: Trong giao diện tạo bảng của phpMyAdmin hoặc các công cụ tương tự, thao tác nào giúp bạn thêm một trường mới vào bảng?

  • A. Sử dụng tùy chọn "Add column" hoặc tương đương trong giao diện.
  • B. Nhấn phím Delete.
  • C. Nhấn nút "Save" (Lưu).
  • D. Chỉ có thể thêm trường khi tạo bảng mới hoàn toàn.

Câu 22: Xét bảng `SanPham` (`MaSP` PK, `TenSP`, `MaLoaiSP` FK) và bảng `LoaiSanPham` (`MaLoaiSP` PK, `TenLoai`). Dữ liệu hiện có trong `LoaiSanPham` là (1, "Điện tử"), (2, "Gia dụng"). Bạn cố gắng thêm bản ghi mới vào bảng `SanPham`: (101, "Tủ lạnh", 3). Thao tác này sẽ thất bại vì lý do nào?

  • A. Trường `MaSP` đã tồn tại (không đúng vì 101 là mới).
  • B. Trường `TenSP` không thể là "Tủ lạnh".
  • C. Giá trị của Khóa ngoài `MaLoaiSP` (là 3) không tồn tại trong bảng `LoaiSanPham`.
  • D. Bản ghi mới không có trường Khóa chính.

Câu 23: Mục đích của việc đánh dấu một trường là `AUTO_INCREMENT` (trong MySQL) hoặc `IDENTITY` (trong SQL Server) khi nó được chọn làm Khóa chính là gì?

  • A. Cho phép trường đó chứa giá trị NULL.
  • B. Tự động đặt giá trị mặc định là 0.
  • C. Thiết lập trường đó làm Khóa ngoài.
  • D. Tự động tạo ra giá trị duy nhất và tăng dần cho trường đó.

Câu 24: Bạn có bảng `DanhMuc` (`MaDM` PK) và bảng `BaiViet` (`MaBV` PK, `MaDM` FK). Mỗi bài viết thuộc về một danh mục. Khi bạn xóa một danh mục (`MaDM` trong `DanhMuc`), bạn muốn tất cả các bài viết thuộc danh mục đó cũng bị xóa theo. Bạn nên thiết lập ràng buộc `ON DELETE` nào cho Khóa ngoài `MaDM` trong bảng `BaiViet`?

  • A. ON DELETE CASCADE
  • B. ON DELETE SET NULL
  • C. ON DELETE RESTRICT
  • D. ON DELETE NO ACTION

Câu 25: Trong một số hệ quản trị cơ sở dữ liệu, khi bạn tạo một Khóa ngoài, hệ thống có thể tự động tạo một chỉ mục (Index) trên trường Khóa ngoài đó. Mục đích của việc tạo chỉ mục này là gì?

  • A. Để đảm bảo tính duy nhất của giá trị Khóa ngoài.
  • B. Để tăng tốc độ truy vấn dữ liệu và kiểm tra ràng buộc toàn vẹn liên quan đến Khóa ngoài.
  • C. Để cho phép trường Khóa ngoài chứa giá trị NULL.
  • D. Để tự động tạo giá trị cho Khóa ngoài.

Câu 26: Bạn có hai bảng `TacGia` (`MaTG` PK) và `Sach` (`MaSach` PK, `MaTG` FK). Để thêm một cuốn sách mới vào bảng `Sach`, với thông tin về tác giả (`MaTG`), điều kiện nào sau đây BẮT BUỘC phải đúng?

  • A. Trường `MaSach` trong bảng `Sach` phải là `AUTO_INCREMENT`.
  • B. Trường `MaTG` trong bảng `Sach` phải cho phép giá trị NULL.
  • C. Bảng `TacGia` phải có ít nhất một bản ghi.
  • D. Giá trị `MaTG` của cuốn sách mới phải tồn tại trong cột `MaTG` của bảng `TacGia`.

Câu 27: Trong mô hình cơ sở dữ liệu, mối quan hệ "Một-nhiều" (One-to-Many) giữa hai thực thể (ví dụ: Một Khoa có nhiều Giáo viên) thường được thể hiện bằng cách nào?

  • A. Đặt Khóa chính của thực thể ở phía "một" làm Khóa ngoài trong bảng của thực thể ở phía "nhiều".
  • B. Đặt Khóa chính của thực thể ở phía "nhiều" làm Khóa ngoài trong bảng của thực thể ở phía "một".
  • C. Tạo một bảng trung gian với hai Khóa ngoài.
  • D. Sử dụng Khóa chính phức hợp cho cả hai bảng.

Câu 28: Giả sử bạn có bảng `PhongBan` (`MaPB` PK) và `NhanVien` (`MaNV` PK, `MaPB` FK). Bạn muốn thay đổi `MaPB` của một Phòng ban trong bảng `PhongBan` và muốn tất cả nhân viên thuộc phòng ban cũ đó tự động được cập nhật `MaPB` mới. Bạn cần thiết lập ràng buộc `ON UPDATE` nào cho Khóa ngoài `MaPB` trong bảng `NhanVien`?

  • A. ON UPDATE RESTRICT
  • B. ON UPDATE SET NULL
  • C. ON UPDATE CASCADE
  • D. ON UPDATE NO ACTION

Câu 29: Điều gì xảy ra nếu bạn cố gắng tạo Khóa ngoài tham chiếu đến một trường ở bảng khác mà trường đó không phải là Khóa chính hoặc Khóa duy nhất (Unique Key) của bảng đó?

  • A. Khóa ngoài sẽ được tạo thành công nhưng không có tác dụng.
  • B. Hệ quản trị cơ sở dữ liệu sẽ báo lỗi và từ chối tạo Khóa ngoài.
  • C. Trường được tham chiếu sẽ tự động trở thành Khóa chính.
  • D. Tất cả dữ liệu trong trường đó sẽ bị xóa.

Câu 30: Trong giao diện đồ họa tạo bảng, sau khi định nghĩa tên trường, kiểu dữ liệu, và các thuộc tính khác, để thiết lập Khóa chính cho một trường, bạn thường tìm tùy chọn nào?

  • A. Tùy chọn đánh dấu "Primary Key" hoặc biểu tượng chìa khóa.
  • B. Tùy chọn "Foreign Key".
  • C. Tùy chọn "Unique".
  • D. Thuộc tính `AUTO_INCREMENT`.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, khái niệm nào được sử dụng để thiết lập mối liên kết giữa hai bảng và đảm bảo tính toàn vẹn tham chiếu?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 2: Khi thiết kế cơ sở dữ liệu cho một thư viện, có hai bảng là `Sach` (thông tin sách) và `MuonSach` (thông tin lượt mượn). Bảng `Sach` có khóa chính là `MaSach`. Bảng `MuonSach` cần lưu thông tin sách nào được mượn. Để liên kết `MuonSach` với `Sach` một cách đúng đắn, bạn cần thêm trường nào vào bảng `MuonSach` và thiết lập nó là loại khóa gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 3: Giả sử bạn có hai bảng: `KhachHang` (có `MaKH` là Khóa chính) và `DonHang` (có `MaDH` là Khóa chính và `MaKH` là Khóa ngoài tham chiếu đến bảng `KhachHang`). Khi bạn cố gắng thêm một bản ghi mới vào bảng `DonHang` với giá trị `MaKH` không tồn tại trong bảng `KhachHang`, hệ quản trị cơ sở dữ liệu sẽ thực hiện hành động mặc định nào (nếu không có ràng buộc ON INSERT được chỉ định)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 4: Trường dùng làm Khóa ngoài trong một bảng phải có kiểu dữ liệu như thế nào so với trường Khóa chính mà nó tham chiếu ở bảng khác?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 5: Xét hai bảng `LopHoc` (có `MaLop` là Khóa chính) và `SinhVien` (có `MaSV` là Khóa chính). Mỗi sinh viên thuộc về một lớp học. Để thể hiện mối quan hệ này, bạn cần thêm Khóa ngoài vào bảng nào và trường nào sẽ làm Khóa ngoài?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 6: Khi định nghĩa một Khóa ngoài, bạn có thể chỉ định hành động sẽ xảy ra khi bản ghi được tham chiếu (bản ghi ở bảng có Khóa chính) bị xóa. Nếu bạn chọn hành động `ON DELETE CASCADE`, điều gì sẽ xảy ra khi một bản ghi trong bảng cha (bảng có Khóa chính) bị xóa?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 7: Trong giao diện đồ họa của một công cụ quản trị cơ sở dữ liệu (ví dụ: phpMyAdmin), để thiết lập Khóa ngoài cho một trường, bạn thường cần thực hiện các bước nào sau đây (không theo thứ tự)?
(1) Chọn trường sẽ làm Khóa ngoài.
(2) Chỉ định bảng và trường Khóa chính mà Khóa ngoài này tham chiếu tới.
(3) Chọn loại chỉ mục là FOREIGN KEY.
(4) Lưu lại cấu trúc bảng.

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 8: Khi nào thì một trường (hoặc tập hợp các trường) trong bảng con có thể chứa giá trị NULL nếu nó được thiết lập làm Khóa ngoài?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 9: Xét hai bảng `SanPham` (có `MaSP` là Khóa chính) và `ChiTietDonHang` (lưu thông tin từng mặt hàng trong mỗi đơn hàng, có Khóa chính là `MaCTDH`). Mỗi dòng trong `ChiTietDonHang` ứng với một sản phẩm cụ thể. Để liên kết `ChiTietDonHang` với `SanPham`, bạn cần thêm Khóa ngoài nào vào bảng `ChiTietDonHang`?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 10: Ràng buộc `ON DELETE SET NULL` trên một Khóa ngoài có ý nghĩa gì khi bản ghi Khóa chính được tham chiếu bị xóa?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 11: Trong một cơ sở dữ liệu quản lý dự án, có hai bảng: `DuAn` (có `MaDA` là Khóa chính) và `NhanVien` (có `MaNV` là Khóa chính). Mỗi dự án có nhiều nhân viên tham gia, và một nhân viên có thể tham gia nhiều dự án. Để thể hiện mối quan hệ 'nhiều-nhiều' này, người ta thường tạo một bảng trung gian là `ThamGia`. Cấu trúc cơ bản của bảng `ThamGia` cần có những trường Khóa nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 12: Bạn đang thiết kế cơ sở dữ liệu cho một trường học với hai bảng: `GiaoVien` (có `MaGV` là Khóa chính) và `MonHoc` (có `MaMH` là Khóa chính). Mỗi môn học được giảng dạy bởi một giáo viên, và một giáo viên có thể dạy nhiều môn. Bạn đã thêm trường `MaGV` vào bảng `MonHoc` làm Khóa ngoài tham chiếu đến bảng `GiaoVien`. Khi một giáo viên nghỉ việc (bản ghi của giáo viên đó bị xóa khỏi bảng `GiaoVien`), bạn muốn các môn học mà giáo viên đó dạy vẫn tồn tại nhưng không còn liên kết với giáo viên nào nữa. Bạn nên thiết lập ràng buộc `ON DELETE` nào cho Khóa ngoài `MaGV` trong bảng `MonHoc`?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 13: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo chủ yếu thông qua việc sử dụng Khóa ngoài, có ý nghĩa quan trọng nhất là gì trong cơ sở dữ liệu quan hệ?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 14: Bạn có hai bảng `QuocGia` (có `MaQG` là Khóa chính) và `ThanhPho` (có `MaTP` là Khóa chính). Mỗi thành phố thuộc về một quốc gia. Để thiết lập mối quan hệ này, bạn thêm trường `MaQG` vào bảng `ThanhPho` làm Khóa ngoài. Nếu bạn thiết lập ràng buộc `ON UPDATE CASCADE` cho Khóa ngoài này, điều gì sẽ xảy ra khi bạn thay đổi giá trị `MaQG` của một quốc gia trong bảng `QuocGia`?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 15: Trong quá trình tạo bảng và thiết lập Khóa ngoài bằng giao diện đồ họa, sau khi đã chọn trường làm Khóa ngoài và chỉ định bảng/trường Khóa chính tham chiếu, bạn cần thực hiện thao tác nào để hoàn tất việc định nghĩa và áp dụng cấu trúc này vào cơ sở dữ liệu?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 16: Một bảng có thể có bao nhiêu Khóa ngoài?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 17: Khóa chính khác Khóa duy nhất (Unique Key) ở điểm nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 18: Khi tạo Khóa ngoài trong một bảng, trường được chọn làm Khóa ngoài bắt buộc phải là Khóa chính của bảng đó không?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 19: Bạn có bảng `Khoa` (có `MaKhoa` là Khóa chính) và bảng `GiaoVien` (có `MaGV` là Khóa chính và `MaKhoa` là Khóa ngoài tham chiếu đến bảng `Khoa`). Khi bạn cố gắng xóa một Khoa khỏi bảng `Khoa` mà vẫn còn giáo viên thuộc Khoa đó trong bảng `GiaoVien`, hệ thống báo lỗi và không cho phép xóa. Điều này là do ràng buộc `ON DELETE` nào đang được áp dụng (thường là mặc định)?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 20: Khi nào thì việc sử dụng Khóa ngoài là không cần thiết hoặc không phù hợp?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 21: Trong giao diện tạo bảng của phpMyAdmin hoặc các công cụ tương tự, thao tác nào giúp bạn thêm một trường mới vào bảng?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 22: Xét bảng `SanPham` (`MaSP` PK, `TenSP`, `MaLoaiSP` FK) và bảng `LoaiSanPham` (`MaLoaiSP` PK, `TenLoai`). Dữ liệu hiện có trong `LoaiSanPham` là (1, 'Điện tử'), (2, 'Gia dụng'). Bạn cố gắng thêm bản ghi mới vào bảng `SanPham`: (101, 'Tủ lạnh', 3). Thao tác này sẽ thất bại vì lý do nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 23: Mục đích của việc đánh dấu một trường là `AUTO_INCREMENT` (trong MySQL) hoặc `IDENTITY` (trong SQL Server) khi nó được chọn làm Khóa chính là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 24: Bạn có bảng `DanhMuc` (`MaDM` PK) và bảng `BaiViet` (`MaBV` PK, `MaDM` FK). Mỗi bài viết thuộc về một danh mục. Khi bạn xóa một danh mục (`MaDM` trong `DanhMuc`), bạn muốn tất cả các bài viết thuộc danh mục đó cũng bị xóa theo. Bạn nên thiết lập ràng buộc `ON DELETE` nào cho Khóa ngoài `MaDM` trong bảng `BaiViet`?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 25: Trong một số hệ quản trị cơ sở dữ liệu, khi bạn tạo một Khóa ngoài, hệ thống có thể tự động tạo một chỉ mục (Index) trên trường Khóa ngoài đó. Mục đích của việc tạo chỉ mục này là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 26: Bạn có hai bảng `TacGia` (`MaTG` PK) và `Sach` (`MaSach` PK, `MaTG` FK). Để thêm một cuốn sách mới vào bảng `Sach`, với thông tin về tác giả (`MaTG`), điều kiện nào sau đây BẮT BUỘC phải đúng?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 27: Trong mô hình cơ sở dữ liệu, mối quan hệ 'Một-nhiều' (One-to-Many) giữa hai thực thể (ví dụ: Một Khoa có nhiều Giáo viên) thường được thể hiện bằng cách nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 28: Giả sử bạn có bảng `PhongBan` (`MaPB` PK) và `NhanVien` (`MaNV` PK, `MaPB` FK). Bạn muốn thay đổi `MaPB` của một Phòng ban trong bảng `PhongBan` và muốn tất cả nhân viên thuộc phòng ban cũ đó tự động được cập nhật `MaPB` mới. Bạn cần thiết lập ràng buộc `ON UPDATE` nào cho Khóa ngoài `MaPB` trong bảng `NhanVien`?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 29: Điều gì xảy ra nếu bạn cố gắng tạo Khóa ngoài tham chiếu đến một trường ở bảng khác mà trường đó không phải là Khóa chính hoặc Khóa duy nhất (Unique Key) của bảng đó?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 07

Câu 30: Trong giao diện đồ họa tạo bảng, sau khi định nghĩa tên trường, kiểu dữ liệu, và các thuộc tính khác, để thiết lập Khóa chính cho một trường, bạn thường tìm tùy chọn nào?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 08

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 08 đượ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 mô hình cơ sở dữ liệu quan hệ, khóa ngoại (Foreign Key) đóng vai trò chính yếu nào trong việc quản lý dữ liệu?

  • A. Đảm bảo mỗi bản ghi trong bảng là duy nhất.
  • B. Thiết lập thứ tự sắp xếp mặc định cho các bản ghi.
  • C. 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.
  • D. Tăng tốc độ truy vấn dữ liệu trên một bảng duy nhất.

Câu 2: Giả sử bạn có hai bảng: "SinhVien" (có MaSV là khóa chính) và "DangKyHocPhan" (ghi nhận sinh viên nào đăng ký học phần nào). Để thể hiện mối quan hệ "Một sinh viên có thể đăng ký nhiều học phần", trường nào trong bảng "DangKyHocPhan" cần được thiết lập làm khóa ngoại?

  • A. Một trường mới tên là KhoaNgoai.
  • B. Một trường tham chiếu đến MaSV của bảng SinhVien.
  • C. Khóa chính của bảng DangKyHocPhan.
  • D. Một trường tham chiếu đến khóa chính của bảng HocPhan (nếu có bảng này).

Câu 3: Khi thiết lập khóa ngoại FK trong bảng B tham chiếu đến khóa chính PK trong bảng A, điều kiện nào sau đây là BẮT BUỘC phải thỏa mãn?

  • A. Bảng B phải có ít bản ghi hơn bảng A.
  • B. Tên của trường FK trong bảng B phải giống hệt tên trường PK trong bảng A.
  • C. Kiểu dữ liệu của trường FK trong bảng B phải khác kiểu dữ liệu của trường PK trong bảng A.
  • D. Kiểu dữ liệu của trường FK trong bảng B phải tương thích (thường là giống) với kiểu dữ liệu của trường PK trong bảng A.

Câu 4: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo bởi khóa ngoại, có ý nghĩa gì trong cơ sở dữ liệu?

  • A. Ngăn chặn việc tạo các bản ghi trong bảng con tham chiếu đến các bản ghi không tồn tại trong bảng cha.
  • B. Đảm bảo tất cả các trường trong bảng đều có giá trị (không NULL).
  • C. Ngăn chặn việc trùng lặp giá trị trong khóa chính.
  • D. Đảm bảo thứ tự nhập dữ liệu giữa các bảng.

Câu 5: Khi sử dụng công cụ thiết kế cơ sở dữ liệu (như trong phpMyAdmin hoặc tương tự) để tạo khóa ngoại, bạn thường cần chỉ định những thông tin nào?

  • A. Chỉ cần tên của bảng con và bảng cha.
  • B. Chỉ cần tên trường khóa ngoại trong bảng con.
  • C. Tên trường khóa ngoại trong bảng con, bảng cha được tham chiếu, và trường khóa chính/duy nhất trong bảng cha.
  • D. Tên khóa ngoại và kiểu dữ liệu của nó.

Câu 6: Trong ngữ cảnh của mối quan hệ khóa ngoại, bảng chứa khóa ngoại được gọi là bảng gì?

  • A. Bảng cha (Parent table).
  • B. Bảng con (Child table).
  • C. Bảng tham chiếu (Referenced table).
  • D. Bảng chính (Primary table).

Câu 7: Giả sử bạn có bảng "DonHang" (chứa khóa ngoại MaKH tham chiếu đến bảng "KhachHang"). Khi bạn cố gắng thêm một bản ghi vào bảng "DonHang" với giá trị MaKH không tồn tại trong bảng "KhachHang", hệ quản trị cơ sở dữ liệu (DBMS) sẽ thực hiện hành động mặc định nào (nếu không có ràng buộc ON INSERT cụ thể)?

  • A. Tự động thêm khách hàng mới vào bảng "KhachHang".
  • B. Gán giá trị NULL cho trường MaKH trong bản ghi mới.
  • C. Chèn bản ghi mới vào bảng "DonHang" nhưng bỏ qua trường MaKH.
  • D. Từ chối thao tác chèn bản ghi và báo lỗi vi phạm ràng buộc khóa ngoại.

Câu 8: Trong quá trình tạo lập các bảng có khóa ngoại, thứ tự tạo bảng nào sau đây là hợp lý và thường được khuyến nghị?

  • A. Tạo bảng cha trước, sau đó tạo bảng con và thiết lập khóa ngoại.
  • B. Tạo bảng con trước, sau đó tạo bảng cha và thiết lập khóa ngoại.
  • C. Tạo cả hai bảng cùng lúc, sau đó mới thiết lập khóa ngoại.
  • D. Thứ tự tạo bảng không quan trọng khi sử dụng khóa ngoại.

Câu 9: Lệnh SQL hoặc thao tác GUI nào thường được sử dụng để THÊM một ràng buộc khóa ngoại vào một bảng đã tồn tại?

  • A. CREATE TABLE.
  • B. ALTER TABLE.
  • C. DROP TABLE.
  • D. SELECT.

Câu 10: Giả sử bảng "LopHoc" có khóa chính MaLop và bảng "HocSinh" có khóa ngoại MaLop tham chiếu đến bảng "LopHoc". Nếu bạn muốn khi xóa một lớp học khỏi bảng "LopHoc", tất cả học sinh thuộc lớp đó trong bảng "HocSinh" cũng bị xóa tự động, bạn sẽ sử dụng ràng buộc ON DELETE nào khi khai báo khóa ngoại?

  • A. ON DELETE CASCADE.
  • B. ON DELETE SET NULL.
  • C. ON DELETE RESTRICT.
  • D. ON DELETE NO ACTION.

Câu 11: Nếu bạn sử dụng ràng buộc ON DELETE SET NULL cho khóa ngoại MaLop trong bảng "HocSinh" (tham chiếu đến MaLop trong "LopHoc"), điều gì sẽ xảy ra khi một bản ghi trong bảng "LopHoc" bị xóa?

  • A. Bản ghi trong bảng "LopHoc" không thể bị xóa.
  • B. Các bản ghi học sinh liên quan trong bảng "HocSinh" cũng bị xóa.
  • C. Giá trị của trường MaLop trong các bản ghi học sinh liên quan trong bảng "HocSinh" sẽ được đặt thành NULL.
  • D. Hệ thống sẽ báo lỗi và ngăn chặn việc xóa.

Câu 12: Chức năng của ràng buộc ON DELETE RESTRICT (hoặc NO ACTION) khi khai báo khóa ngoại là gì?

  • A. Tự động xóa các bản ghi liên quan trong bảng con khi bản ghi trong bảng cha bị xóa.
  • B. Ngăn chặn việc xóa bản ghi trong bảng cha nếu có bất kỳ bản ghi liên quan nào tồn tại trong bảng con.
  • C. Đặt giá trị khóa ngoại trong bảng con thành NULL khi bản ghi trong bảng cha bị xóa.
  • D. Cho phép xóa bản ghi trong bảng cha mà không ảnh hưởng đến bản ghi trong bảng con.

Câu 13: Trong giao diện thiết kế bảng của một hệ quản trị CSDL, để khai báo một trường là khóa ngoại, bạn thường tìm kiếm tùy chọn hoặc mục nào?

  • A. Primary Key.
  • B. Auto Increment.
  • C. Unique.
  • D. Foreign Key / Relationship View.

Câu 14: Khi thiết kế cơ sở dữ liệu, việc sử dụng khóa ngoại giúp giảm thiểu vấn đề gì?

  • A. Dữ liệu không nhất quán hoặc "mồ côi" (ví dụ: đơn hàng không thuộc về khách hàng nào tồn tại).
  • B. Kích thước lưu trữ của cơ sở dữ liệu.
  • C. Số lượng bảng cần thiết trong cơ sở dữ liệu.
  • D. Thời gian cần thiết để nhập dữ liệu ban đầu.

Câu 15: Hãy xem xét hai bảng: "SanPham" (MaSP, TenSP, Gia) và "ChiTietDonHang" (SoDH, MaSP, SoLuong, DonGia). Để thể hiện rằng mỗi dòng trong chi tiết đơn hàng là của một sản phẩm cụ thể, trường nào trong bảng "ChiTietDonHang" nên là khóa ngoại tham chiếu đến bảng "SanPham"?

  • A. SoDH.
  • B. MaSP.
  • C. SoLuong.
  • D. DonGia.

Câu 16: Khi tạo bảng "DonHang" với khóa ngoại MaKH tham chiếu đến bảng "KhachHang", nếu bảng "KhachHang" chưa được tạo hoặc không có trường MaKH là khóa chính/duy nhất, điều gì sẽ xảy ra khi bạn cố gắng tạo bảng "DonHang"?

  • A. Bảng "DonHang" vẫn được tạo nhưng khóa ngoại sẽ bị bỏ qua.
  • B. Hệ thống sẽ tự động tạo bảng "KhachHang" và trường MaKH.
  • C. Hệ thống sẽ báo lỗi vì không thể tạo ràng buộc khóa ngoại tới một bảng hoặc trường không tồn tại/không hợp lệ.
  • D. Khóa ngoại sẽ được tạo nhưng ở trạng thái "vô hiệu hóa".

Câu 17: Sự khác biệt cơ bản giữa khóa chính (Primary Key) và khóa ngoại (Foreign Key) là gì?

  • A. Khóa chính chỉ có thể là một trường, khóa ngoại có thể là nhiều trường.
  • B. Khóa chính cho phép giá trị NULL, khóa ngoại thì không.
  • C. Khóa chính dùng để liên kết các bảng, khóa ngoại dùng để định danh bản ghi.
  • D. Khóa chính định danh duy nhất mỗi bản ghi trong bảng của nó, khóa ngoại tham chiếu đến khóa chính (hoặc khóa duy nhất) ở bảng khác để thiết lập mối quan hệ.

Câu 18: Trong giao diện thiết kế bảng, sau khi đã thêm các trường và xác định trường nào là khóa chính, bước tiếp theo để thiết lập mối quan hệ với bảng khác thông qua khóa ngoại là gì?

  • A. Chuyển sang tab hoặc mục quản lý các mối quan hệ/khóa ngoại.
  • B. Thiết lập thuộc tính AUTO_INCREMENT cho trường khóa ngoại.
  • C. Nhập dữ liệu mẫu vào các trường.
  • D. Đóng cửa sổ thiết kế bảng.

Câu 19: Giả sử bạn có bảng "DuAn" (MaDA là khóa chính) và bảng "NhanVien_DuAn" (MaNV, MaDA là khóa chính kép, trong đó MaNV là khóa ngoại tham chiếu đến bảng "NhanVien", MaDA là khóa ngoại tham chiếu đến bảng "DuAn"). Mối quan hệ giữa bảng "DuAn" và "NhanVien_DuAn" là loại mối quan hệ nào?

  • A. Một-Một (One-to-One).
  • B. Một-Nhiều (One-to-Many).
  • C. Nhiều-Một (Many-to-One).
  • D. Nhiều-Nhiều (Many-to-Many).

Câu 20: Khi làm việc với khóa ngoại, việc cập nhật giá trị của khóa chính trong bảng cha có thể gây ra vấn đề nếu không được xử lý bởi ràng buộc ON UPDATE. Ràng buộc ON UPDATE nào sẽ tự động cập nhật giá trị khóa ngoại tương ứng trong bảng con khi khóa chính ở bảng cha thay đổi?

  • A. ON UPDATE CASCADE.
  • B. ON UPDATE SET NULL.
  • C. ON UPDATE RESTRICT.
  • D. ON UPDATE NO ACTION.

Câu 21: Bạn được yêu cầu thiết kế cơ sở dữ liệu cho thư viện, bao gồm bảng "Sach" (MaSach, TenSach) và bảng "MuonSach" (MaMuon, MaSach, MaDocGia, NgayMuon). Trường MaSach trong bảng "MuonSach" nên được thiết lập như thế nào để đảm bảo mỗi lượt mượn sách đều phải là một cuốn sách có trong bảng "Sach"?

  • A. Thiết lập MaSach trong "MuonSach" làm khóa chính.
  • B. Thiết lập MaSach trong cả hai bảng làm khóa chính.
  • C. Thiết lập MaSach trong "MuonSach" làm khóa ngoại tham chiếu đến MaSach trong "Sach".
  • D. Thiết lập MaSach trong "Sach" làm khóa ngoại tham chiếu đến MaSach trong "MuonSach".

Câu 22: Khi sử dụng giao diện đồ họa để tạo khóa ngoại, sau khi chọn trường khóa ngoại và bảng/trường tham chiếu, bạn thường cần xác định thêm các tùy chọn nào liên quan đến hành động khi dữ liệu ở bảng cha bị thay đổi?

  • A. Kiểu dữ liệu cho khóa ngoại.
  • B. Thuộc tính AUTO_INCREMENT.
  • C. Giá trị mặc định cho khóa ngoại.
  • D. Các ràng buộc ON DELETE và ON UPDATE.

Câu 23: Trong một hệ quản trị CSDL cụ thể (ví dụ: MySQL), khi bạn tạo khóa ngoại bằng lệnh SQL, cú pháp cơ bản để thêm ràng buộc này vào bảng "BangCon" tham chiếu đến "BangCha" là gì?

  • A. ADD PRIMARY KEY (TenTruongFK) REFERENCES BangCha(TenTruongPK);
  • B. CREATE FOREIGN KEY (TenTruongFK) REFERENCES BangCha(TenTruongPK);
  • C. ADD CONSTRAINT TenKhoaNgoai FOREIGN KEY (TenTruongFK) REFERENCES BangCha(TenTruongPK);
  • D. SET FOREIGN KEY (TenTruongFK) TO BangCha(TenTruongPK);

Câu 24: Giả sử bạn có bảng "PhongBan" (MaPB là khóa chính) và bảng "NhanVien" (MaNV là khóa chính, MaPB là khóa ngoại tham chiếu đến "PhongBan"). Bạn muốn đảm bảo rằng mọi nhân viên phải thuộc về một phòng ban TỒN TẠI. Điều này được đảm bảo nhờ thuộc tính nào của khóa ngoại MaPB trong bảng "NhanVien"?

  • A. Thuộc tính UNIQUE.
  • B. Thuộc tính FOREIGN KEY (đảm bảo tính toàn vẹn tham chiếu).
  • C. Thuộc tính PRIMARY KEY.
  • D. Thuộc tính AUTO_INCREMENT.

Câu 25: Khi thiết kế cơ sở dữ liệu, việc xác định mối quan hệ giữa các thực thể (entity) và biểu diễn chúng bằng khóa ngoại là một phần của bước nào trong quy trình thiết kế?

  • A. Thiết kế logic (Logical Design).
  • B. Thiết kế vật lý (Physical Design).
  • C. Phân tích yêu cầu (Requirements Analysis).
  • D. Triển khai (Implementation).

Câu 26: Bạn có hai bảng: "DanhMuc" (MaDM là khóa chính) và "BaiViet" (MaBV là khóa chính, MaDM là khóa ngoại tham chiếu đến "DanhMuc"). Nếu bạn muốn một bài viết KHÔNG NHẤT THIẾT phải thuộc về một danh mục nào đó (tức là trường MaDM trong "BaiViet" có thể không có giá trị), bạn sẽ thiết lập thuộc tính nào cho trường MaDM khi tạo bảng "BaiViet"?

  • A. NOT NULL.
  • B. UNIQUE.
  • C. ALLOW NULL (hoặc không đánh dấu NOT NULL).
  • D. AUTO_INCREMENT.

Câu 27: Trong giao diện thiết kế bảng, sau khi đã tạo các trường, để thiết lập khóa ngoại, bạn thường kéo và thả từ trường khóa ngoại ở bảng con đến trường khóa chính ở bảng cha trên sơ đồ mối quan hệ (Relationship View) hoặc sử dụng một tab/mục riêng. Thao tác này nhằm mục đích gì?

  • A. Sao chép dữ liệu từ bảng cha sang bảng con.
  • B. Đổi tên trường khóa ngoại cho giống với khóa chính.
  • C. Xóa trường khóa chính ở bảng cha.
  • D. Định nghĩa và lưu trữ ràng buộc tham chiếu giữa hai trường/hai bảng.

Câu 28: Giả sử bảng "Khoa" (MaKhoa là khóa chính) và bảng "GiaoVien" (MaGV là khóa chính, MaKhoa là khóa ngoại tham chiếu đến "Khoa"). Nếu có một giáo viên đang thuộc một khoa cụ thể, hành động nào sau đây BỊ CẤM theo ràng buộc khóa ngoại mặc định (ON DELETE RESTRICT)?

  • A. Xóa bản ghi của khoa đó khỏi bảng "Khoa".
  • B. Thêm một giáo viên mới vào bảng "GiaoVien" với MaKhoa đã tồn tại.
  • C. Cập nhật thông tin (ví dụ: tên) của khoa đó trong bảng "Khoa".
  • D. Xóa bản ghi của giáo viên đó khỏi bảng "GiaoVien".

Câu 29: Mục đích của việc đặt tên cho ràng buộc khóa ngoại (CONSTRAINT TenKhoaNgoai FOREIGN KEY...) khi tạo bằng lệnh SQL là gì?

  • A. Để ràng buộc này tự động được áp dụng cho tất cả các bảng khác.
  • B. Để dễ dàng quản lý (thêm, xóa, sửa) ràng buộc này sau khi bảng đã được tạo.
  • C. Để tăng hiệu suất truy vấn dữ liệu.
  • D. Đây là cú pháp bắt buộc mà không có mục đích cụ thể nào khác.

Câu 30: Trong thực hành tạo lập bảng với khóa ngoại, việc xác định đúng mối quan hệ (1-nhiều, nhiều-nhiều) giữa các thực thể trước khi bắt đầu tạo bảng là quan trọng nhất vì:

  • A. Nó chỉ ảnh hưởng đến tên của các trường.
  • B. Nó quyết định màu sắc hiển thị của các bảng trong giao diện thiết kế.
  • C. Nó giúp tự động điền dữ liệu mẫu vào các bảng.
  • D. Nó quyết định cách đặt khóa chính, khóa ngoại và có cần bảng trung gian cho mối quan hệ nhiều-nhiều hay không, từ đó ảnh hưởng trực tiếp đến cấu trúc bảng cần tạo.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 1: Trong mô hình cơ sở dữ liệu quan hệ, khóa ngoại (Foreign Key) đóng vai trò chính yếu nào trong việc quản lý dữ liệu?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 2: Giả sử bạn có hai bảng: 'SinhVien' (có MaSV là khóa chính) và 'DangKyHocPhan' (ghi nhận sinh viên nào đăng ký học phần nào). Để thể hiện mối quan hệ 'Một sinh viên có thể đăng ký nhiều học phần', trường nào trong bảng 'DangKyHocPhan' cần được thiết lập làm khóa ngoại?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 3: Khi thiết lập khóa ngoại FK trong bảng B tham chiếu đến khóa chính PK trong bảng A, điều kiện nào sau đây là BẮT BUỘC phải thỏa mãn?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 4: Tính toàn vẹn tham chiếu (Referential Integrity), được đảm bảo bởi khóa ngoại, có ý nghĩa gì trong cơ sở dữ liệu?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 5: Khi sử dụng công cụ thiết kế cơ sở dữ liệu (như trong phpMyAdmin hoặc tương tự) để tạo khóa ngoại, bạn thường cần chỉ định những thông tin nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 6: Trong ngữ cảnh của mối quan hệ khóa ngoại, bảng chứa khóa ngoại được gọi là bảng gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 7: Giả sử bạn có bảng 'DonHang' (chứa khóa ngoại MaKH tham chiếu đến bảng 'KhachHang'). Khi bạn cố gắng thêm một bản ghi vào bảng 'DonHang' với giá trị MaKH không tồn tại trong bảng 'KhachHang', hệ quản trị cơ sở dữ liệu (DBMS) sẽ thực hiện hành động mặc định nào (nếu không có ràng buộc ON INSERT cụ thể)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 8: Trong quá trình tạo lập các bảng có khóa ngoại, thứ tự tạo bảng nào sau đây là hợp lý và thường được khuyến nghị?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 9: Lệnh SQL hoặc thao tác GUI nào thường được sử dụng để THÊM một ràng buộc khóa ngoại vào một bảng đã tồn tại?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 10: Giả sử bảng 'LopHoc' có khóa chính MaLop và bảng 'HocSinh' có khóa ngoại MaLop tham chiếu đến bảng 'LopHoc'. Nếu bạn muốn khi xóa một lớp học khỏi bảng 'LopHoc', tất cả học sinh thuộc lớp đó trong bảng 'HocSinh' cũng bị xóa tự động, bạn sẽ sử dụng ràng buộc ON DELETE nào khi khai báo khóa ngoại?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 11: Nếu bạn sử dụng ràng buộc ON DELETE SET NULL cho khóa ngoại MaLop trong bảng 'HocSinh' (tham chiếu đến MaLop trong 'LopHoc'), điều gì sẽ xảy ra khi một bản ghi trong bảng 'LopHoc' bị xóa?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 12: Chức năng của ràng buộc ON DELETE RESTRICT (hoặc NO ACTION) khi khai báo khóa ngoại là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 13: Trong giao diện thiết kế bảng của một hệ quản trị CSDL, để khai báo một trường là khóa ngoại, bạn thường tìm kiếm tùy chọn hoặc mục nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 14: Khi thiết kế cơ sở dữ liệu, việc sử dụng khóa ngoại giúp giảm thiểu vấn đề gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 15: Hãy xem xét hai bảng: 'SanPham' (MaSP, TenSP, Gia) và 'ChiTietDonHang' (SoDH, MaSP, SoLuong, DonGia). Để thể hiện rằng mỗi dòng trong chi tiết đơn hàng là của một sản phẩm cụ thể, trường nào trong bảng 'ChiTietDonHang' nên là khóa ngoại tham chiếu đến bảng 'SanPham'?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 16: Khi tạo bảng 'DonHang' với khóa ngoại MaKH tham chiếu đến bảng 'KhachHang', nếu bảng 'KhachHang' chưa được tạo hoặc không có trường MaKH là khóa chính/duy nhất, điều gì sẽ xảy ra khi bạn cố gắng tạo bảng 'DonHang'?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 17: Sự khác biệt cơ bản giữa khóa chính (Primary Key) và khóa ngoại (Foreign Key) là gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 18: Trong giao diện thiết kế bảng, sau khi đã thêm các trường và xác định trường nào là khóa chính, bước tiếp theo để thiết lập mối quan hệ với bảng khác thông qua khóa ngoại là gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 19: Giả sử bạn có bảng 'DuAn' (MaDA là khóa chính) và bảng 'NhanVien_DuAn' (MaNV, MaDA là khóa chính kép, trong đó MaNV là khóa ngoại tham chiếu đến bảng 'NhanVien', MaDA là khóa ngoại tham chiếu đến bảng 'DuAn'). Mối quan hệ giữa bảng 'DuAn' và 'NhanVien_DuAn' là loại mối quan hệ nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 20: Khi làm việc với khóa ngoại, việc cập nhật giá trị của khóa chính trong bảng cha có thể gây ra vấn đề nếu không được xử lý bởi ràng buộc ON UPDATE. Ràng buộc ON UPDATE nào sẽ tự động cập nhật giá trị khóa ngoại tương ứng trong bảng con khi khóa chính ở bảng cha thay đổi?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 21: Bạn được yêu cầu thiết kế cơ sở dữ liệu cho thư viện, bao gồm bảng 'Sach' (MaSach, TenSach) và bảng 'MuonSach' (MaMuon, MaSach, MaDocGia, NgayMuon). Trường MaSach trong bảng 'MuonSach' nên được thiết lập như thế nào để đảm bảo mỗi lượt mượn sách đều phải là một cuốn sách có trong bảng 'Sach'?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 22: Khi sử dụng giao diện đồ họa để tạo khóa ngoại, sau khi chọn trường khóa ngoại và bảng/trường tham chiếu, bạn thường cần xác định thêm các tùy chọn nào liên quan đến hành động khi dữ liệu ở bảng cha bị thay đổi?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 23: Trong một hệ quản trị CSDL cụ thể (ví dụ: MySQL), khi bạn tạo khóa ngoại bằng lệnh SQL, cú pháp cơ bản để thêm ràng buộc này vào bảng 'BangCon' tham chiếu đến 'BangCha' là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 24: Giả sử bạn có bảng 'PhongBan' (MaPB là khóa chính) và bảng 'NhanVien' (MaNV là khóa chính, MaPB là khóa ngoại tham chiếu đến 'PhongBan'). Bạn muốn đảm bảo rằng mọi nhân viên phải thuộc về một phòng ban TỒN TẠI. Điều này được đảm bảo nhờ thuộc tính nào của khóa ngoại MaPB trong bảng 'NhanVien'?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 25: Khi thiết kế cơ sở dữ liệu, việc xác định mối quan hệ giữa các thực thể (entity) và biểu diễn chúng bằng khóa ngoại là một phần của bước nào trong quy trình thiết kế?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 26: Bạn có hai bảng: 'DanhMuc' (MaDM là khóa chính) và 'BaiViet' (MaBV là khóa chính, MaDM là khóa ngoại tham chiếu đến 'DanhMuc'). Nếu bạn muốn một bài viết KHÔNG NHẤT THIẾT phải thuộc về một danh mục nào đó (tức là trường MaDM trong 'BaiViet' có thể không có giá trị), bạn sẽ thiết lập thuộc tính nào cho trường MaDM khi tạo bảng 'BaiViet'?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 27: Trong giao diện thiết kế bảng, sau khi đã tạo các trường, để thiết lập khóa ngoại, bạn thường kéo và thả từ trường khóa ngoại ở bảng con đến trường khóa chính ở bảng cha trên sơ đồ mối quan hệ (Relationship View) hoặc sử dụng một tab/mục riêng. Thao tác này nhằm mục đích gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 28: Giả sử bảng 'Khoa' (MaKhoa là khóa chính) và bảng 'GiaoVien' (MaGV là khóa chính, MaKhoa là khóa ngoại tham chiếu đến 'Khoa'). Nếu có một giáo viên đang thuộc một khoa cụ thể, hành động nào sau đây BỊ CẤM theo ràng buộc khóa ngoại mặc định (ON DELETE RESTRICT)?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 29: Mục đích của việc đặt tên cho ràng buộc khóa ngoại (CONSTRAINT TenKhoaNgoai FOREIGN KEY...) khi tạo bằng lệnh SQL là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 08

Câu 30: Trong thực hành tạo lập bảng với khóa ngoại, việc xác định đúng mối quan hệ (1-nhiều, nhiều-nhiều) giữa các thực thể trước khi bắt đầu tạo bảng là quan trọng nhất vì:

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 09

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 09 đượ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 thiết kế cơ sở dữ liệu, khi tạo lập bảng `DonHang` và muốn liên kết mỗi đơn hàng với một khách hàng duy nhất từ bảng `KhachHang`, bạn cần thêm trường nào vào bảng `DonHang` và thiết lập loại ràng buộc nào phổ biến nhất để thực hiện liên kết này?

  • A. Thêm trường `MaKhachHang` và thiết lập làm Khóa Chính (Primary Key).
  • B. Thêm trường `TenKhachHang` và thiết lập làm Khóa Ngoại (Foreign Key).
  • C. Thêm trường `MaKhachHang` và thiết lập làm Khóa Ngoại (Foreign Key) tham chiếu đến bảng `KhachHang`.
  • D. Thêm trường `MaDonHang` và thiết lập làm Khóa Ngoại (Foreign Key) tham chiếu đến bảng `KhachHang`.

Câu 2: Mục đích chính của việc sử dụng Khóa Ngoại (Foreign Key) trong cơ sở dữ liệu là gì?

  • A. Đảm bảo tính toàn vẹn tham chiếu giữa các bảng.
  • B. Giúp tăng tốc độ truy vấn dữ liệu độc lập trong một bảng.
  • C. Ngăn chặn các giá trị trùng lặp trong cột.
  • D. Xác định bản ghi duy nhất trong một bảng.

Câu 3: Giả sử bạn có bảng `SanPham(MaSP, TenSP, Gia)` và bảng `LoaiSanPham(MaLoai, TenLoai)`. Để thể hiện mối quan hệ "một loại sản phẩm có nhiều sản phẩm", bạn sẽ đặt Khóa Ngoại ở bảng nào và nó sẽ tham chiếu đến khóa chính của bảng nào?

  • A. Đặt Khóa Ngoại ở bảng `LoaiSanPham`, tham chiếu đến `MaSP` của bảng `SanPham`.
  • B. Đặt Khóa Ngoại ở cả hai bảng `SanPham` và `LoaiSanPham`, tham chiếu lẫn nhau.
  • C. Đặt Khóa Ngoại ở bảng `LoaiSanPham`, tham chiếu đến `MaLoai` của bảng `LoaiSanPham`.
  • D. Đặt Khóa Ngoại ở bảng `SanPham`, tham chiếu đến `MaLoai` của bảng `LoaiSanPham`.

Câu 4: Khi tạo một Khóa Ngoại `FK_A` trong bảng `BangA` để tham chiếu đến Khóa Chính `PK_B` trong bảng `BangB`, điều kiện nào sau đây là BẮT BUỘC phải đúng?

  • A. Kiểu dữ liệu của cột `FK_A` phải khác kiểu dữ liệu của cột `PK_B`.
  • B. Kiểu dữ liệu của cột `FK_A` phải tương thích (thường là giống hệt) với kiểu dữ liệu của cột `PK_B`.
  • C. Tên cột `FK_A` phải giống tên cột `PK_B`.
  • D. Cột `FK_A` phải luôn có thuộc tính AUTO_INCREMENT.

Câu 5: Trong một mối quan hệ Khóa Ngoại, bảng chứa Khóa Ngoại được gọi là bảng con (child table), còn bảng mà Khóa Ngoại tham chiếu tới Khóa Chính của nó được gọi là bảng cha (parent table). Điều nào sau đây là đúng về mối quan hệ thêm dữ liệu giữa bảng cha và bảng con?

  • A. Bạn phải thêm dữ liệu vào bảng con trước, sau đó mới thêm dữ liệu vào bảng cha.
  • B. Bạn có thể thêm dữ liệu vào bảng con với giá trị Khóa Ngoại bất kỳ, kể cả khi giá trị đó không tồn tại ở bảng cha.
  • C. Bạn phải thêm dữ liệu vào bảng cha trước, sau đó mới thêm dữ liệu vào bảng con sử dụng giá trị Khóa Chính đã tồn tại ở bảng cha.
  • D. Thứ tự thêm dữ liệu giữa bảng cha và bảng con không quan trọng.

Câu 6: Bạn có bảng `TacGia(MaTG, TenTG)` với `MaTG` là Khóa Chính và bảng `Sach(MaSach, TenSach, MaTG)` với `MaSach` là Khóa Chính và `MaTG` là Khóa Ngoại tham chiếu đến bảng `TacGia`. Nếu bạn cố gắng thêm một cuốn sách mới vào bảng `Sach` với giá trị `MaTG` không tồn tại trong bảng `TacGia`, điều gì sẽ xảy ra (với cài đặt ràng buộc khóa ngoại mặc định)?

  • A. Bản ghi sẽ được thêm thành công vào bảng `Sach`, nhưng giá trị `MaTG` sẽ được đặt là NULL.
  • B. Hệ quản trị cơ sở dữ liệu sẽ báo lỗi và từ chối thêm bản ghi đó để bảo vệ tính toàn vẹn dữ liệu.
  • C. Một bản ghi mới cho tác giả sẽ tự động được thêm vào bảng `TacGia` với `MaTG` bạn vừa nhập.
  • D. Giá trị `MaTG` trong bản ghi mới của bảng `Sach` sẽ tự động được thay thế bằng giá trị `MaTG` đầu tiên trong bảng `TacGia`.

Câu 7: Khóa Chính (Primary Key) và ràng buộc DUY NHẤT (UNIQUE constraint) đều đảm bảo tính duy nhất của dữ liệu trong cột hoặc tập hợp cột. Sự khác biệt cơ bản nhất giữa chúng là gì?

  • A. Khóa Chính cho phép nhiều giá trị NULL, còn UNIQUE thì không.
  • B. Một bảng chỉ có thể có nhiều Khóa Chính nhưng chỉ một ràng buộc UNIQUE.
  • C. Một bảng chỉ có thể có một Khóa Chính, còn có thể có nhiều ràng buộc UNIQUE.
  • D. Khóa Chính không thể tham chiếu bởi Khóa Ngoại, còn UNIQUE thì có thể.

Câu 8: Khi sử dụng các công cụ đồ họa để thiết kế cơ sở dữ liệu (như phpMyAdmin, MySQL Workbench, v.v.), việc tạo Khóa Ngoại thường bao gồm những bước chính nào?

  • A. Chọn cột sẽ làm Khóa Ngoại, chọn bảng và cột Khóa Chính mà nó sẽ tham chiếu.
  • B. Chỉ cần đặt tên cho Khóa Ngoại, hệ thống sẽ tự động xác định bảng và cột tham chiếu.
  • C. Xác định Khóa Chính cho bảng con và Khóa Ngoại cho bảng cha.
  • D. Thiết lập thuộc tính AUTO_INCREMENT cho cột Khóa Ngoại.

Câu 9: Cột được chọn làm Khóa Chính thường có thuộc tính NOT NULL. Tại sao thuộc tính này lại quan trọng đối với Khóa Chính?

  • A. Để cột đó có thể lưu trữ giá trị mặc định là 0.
  • B. Để cột đó có thể được sử dụng làm Khóa Ngoại ở bảng khác.
  • C. Để cho phép nhiều bản ghi có cùng giá trị trong cột đó.
  • D. Để đảm bảo mỗi bản ghi luôn có một giá trị định danh duy nhất và xác định được.

Câu 10: Giả sử bạn có bảng `LopHoc(MaLop, TenLop, MaGVCN)` và bảng `GiaoVien(MaGV, TenGV)`. `MaLop` và `MaGV` lần lượt là Khóa Chính của hai bảng. Để đảm bảo rằng `MaGVCN` trong `LopHoc` luôn là một `MaGV` hợp lệ tồn tại trong bảng `GiaoVien`, bạn sẽ thiết lập ràng buộc Khóa Ngoại trên cột nào và tham chiếu đến cột nào?

  • A. Thiết lập Khóa Ngoại trên `MaLop` của `LopHoc` tham chiếu `MaGV` của `GiaoVien`.
  • B. Thiết lập Khóa Ngoại trên `MaGVCN` của `LopHoc` tham chiếu `MaGV` của `GiaoVien`.
  • C. Thiết lập Khóa Ngoại trên `MaGV` của `GiaoVien` tham chiếu `MaGVCN` của `LopHoc`.
  • D. Không cần thiết lập Khóa Ngoại, chỉ cần đảm bảo kiểu dữ liệu giống nhau.

Câu 11: Khi xóa một bản ghi từ bảng cha (parent table) mà bản ghi đó đang được tham chiếu bởi Khóa Ngoại trong bảng con (child table), hành động mặc định (RESTRICT hoặc NO ACTION) của hầu hết các hệ quản trị cơ sở dữ liệu là gì?

  • A. Tự động xóa tất cả các bản ghi liên quan trong bảng con.
  • B. Đặt giá trị Khóa Ngoại trong các bản ghi liên quan ở bảng con thành NULL.
  • C. Từ chối thao tác xóa ở bảng cha để bảo vệ tính toàn vẹn dữ liệu.
  • D. Bỏ qua ràng buộc Khóa Ngoại và thực hiện xóa ở bảng cha.

Câu 12: Bạn có bảng `NhanVien(MaNV, TenNV, MaPhongBan)` và bảng `PhongBan(MaPB, TenPB)`. `MaNV` và `MaPB` là Khóa Chính. `MaPhongBan` trong `NhanVien` là Khóa Ngoại tham chiếu đến `MaPB` trong `PhongBan`. Nếu bạn muốn cho phép một nhân viên có thể chưa thuộc phòng ban nào (tức là `MaPhongBan` có thể không có giá trị), bạn cần thiết lập thuộc tính gì cho cột `MaPhongBan` trong bảng `NhanVien` khi tạo bảng?

  • A. Cho phép giá trị NULL (Allow NULLs).
  • B. Không cho phép giá trị NULL (NOT NULL).
  • C. Thiết lập thuộc tính AUTO_INCREMENT.
  • D. Thiết lập thuộc tính UNIQUE.

Câu 13: Ràng buộc nào sau đây đảm bảo rằng một cột hoặc tập hợp các cột trong một bảng KHÔNG chứa giá trị trùng lặp, nhưng vẫn cho phép giá trị NULL (nếu không có ràng buộc NOT NULL bổ sung)?

  • A. PRIMARY KEY
  • B. UNIQUE
  • C. FOREIGN KEY
  • D. CHECK

Câu 14: Khi tạo Khóa Ngoại, việc đặt tên cho ràng buộc Khóa Ngoại có ý nghĩa gì?

  • A. Bắt buộc phải đặt tên theo một quy tắc cố định của hệ quản trị cơ sở dữ liệu.
  • B. Tên này sẽ tự động trở thành tên của cột Khóa Ngoại.
  • C. Không có ý nghĩa gì cả, hệ thống sẽ tự tạo tên ngẫu nhiên.
  • D. Giúp dễ dàng xác định, quản lý hoặc xóa ràng buộc Khóa Ngoại sau này.

Câu 15: Giả sử bạn có bảng `MonHoc(MaMH, TenMH)` và bảng `Diem(MaDiem, MaSV, MaMH, DiemSo)`. `MaMH` trong `MonHoc` là PK. `MaSV` trong `Diem` là FK tham chiếu bảng `SinhVien`, và `MaMH` trong `Diem` là FK tham chiếu bảng `MonHoc`. Nếu bạn muốn xóa một môn học khỏi bảng `MonHoc`, nhưng chỉ muốn các bản ghi điểm liên quan trong bảng `Diem` được đặt giá trị `MaMH` thành NULL (nếu cột cho phép NULL), bạn sẽ thiết lập hành động tham chiếu nào cho Khóa Ngoại `MaMH` trong bảng `Diem`?

  • A. ON DELETE SET NULL
  • B. ON DELETE CASCADE
  • C. ON DELETE RESTRICT
  • D. ON DELETE NO ACTION

Câu 16: Khi tạo bảng trong một công cụ quản lý cơ sở dữ liệu, bước nào thường được thực hiện sau khi đã định nghĩa tên và kiểu dữ liệu cho tất cả các cột?

  • A. Nhập dữ liệu mẫu vào bảng.
  • B. Xóa bớt các cột không cần thiết.
  • C. Thiết lập Khóa Chính và Khóa Ngoại (nếu có).
  • D. Thay đổi tên cơ sở dữ liệu.

Câu 17: Điều nào sau đây là một lợi ích trực tiếp của việc sử dụng Khóa Ngoại để tạo liên kết giữa các bảng?

  • A. Giảm dung lượng lưu trữ của cơ sở dữ liệu.
  • B. Ngăn chặn việc tạo các bản ghi con tham chiếu đến các bản ghi cha không tồn tại.
  • C. Tăng tốc độ tìm kiếm dữ liệu trong một bảng duy nhất.
  • D. Cho phép tạo các bản ghi trùng lặp trong bảng con.

Câu 18: Trong ngữ cảnh cơ sở dữ liệu quan hệ, mối quan hệ "Một-nhiều" (One-to-Many) giữa hai bảng A và B (ví dụ: Một Khoa có nhiều Sinh viên) thường được thể hiện bằng cách nào?

  • A. Đặt Khóa Chính của bảng A làm Khóa Ngoại trong bảng B.
  • B. Đặt Khóa Chính của bảng B làm Khóa Ngoại trong bảng A.
  • C. Tạo một bảng thứ ba chứa Khóa Chính của cả A và B.
  • D. Đặt Khóa Chính của bảng "một" (bảng Khoa) làm Khóa Ngoại trong bảng "nhiều" (bảng Sinh viên).

Câu 19: Giả sử bạn đã tạo bảng `KhachHang(MaKH, TenKH)` với `MaKH` là PK và bảng `DonHang(MaDH, NgayDH)` với `MaDH` là PK. Bạn cần thêm cột `MaKH` vào bảng `DonHang` để làm Khóa Ngoại tham chiếu đến bảng `KhachHang`. Kiểu dữ liệu của cột `MaKH` mới thêm vào bảng `DonHang` phải như thế nào so với kiểu dữ liệu của cột `MaKH` trong bảng `KhachHang`?

  • A. Phải có cùng kiểu dữ liệu hoặc kiểu dữ liệu tương thích.
  • B. Phải là kiểu dữ liệu TEXT.
  • C. Phải là kiểu dữ liệu boolean.
  • D. Kiểu dữ liệu không quan trọng.

Câu 20: Khi thiết kế cơ sở dữ liệu, việc lựa chọn trường nào làm Khóa Chính nên dựa trên tiêu chí nào là quan trọng nhất?

  • A. Trường có tên ngắn nhất.
  • B. Trường chứa thông tin mô tả chi tiết nhất về đối tượng.
  • C. Trường có giá trị luôn duy nhất cho mỗi bản ghi và không có khả năng thay đổi trong suốt vòng đời của bản ghi.
  • D. Trường có kiểu dữ liệu là số nguyên (INT).

Câu 21: Bạn có bảng `BaiViet(MaBaiViet, TieuDe, NoiDung, MaTacGia)` và bảng `TacGia(MaTacGia, TenTacGia)`. `MaBaiViet` là PK của `BaiViet`, `MaTacGia` là PK của `TacGia`. `MaTacGia` trong `BaiViet` là FK tham chiếu đến `TacGia`. Điều gì xảy ra nếu bạn cố gắng cập nhật giá trị `MaTacGia` trong một bản ghi của bảng `BaiViet` thành một giá trị không tồn tại trong bảng `TacGia`?

  • A. Giá trị sẽ được cập nhật thành công và bản ghi tác giả mới sẽ được tạo.
  • B. Giá trị `MaTacGia` trong bản ghi đó sẽ tự động được đặt thành NULL.
  • C. Hệ thống sẽ chỉ cảnh báo mà vẫn cho phép cập nhật.
  • D. Hệ quản trị cơ sở dữ liệu sẽ báo lỗi và từ chối thao tác cập nhật.

Câu 22: Khi bạn tạo một Khóa Ngoại, hệ quản trị cơ sở dữ liệu thường tự động tạo một chỉ mục (index) trên cột Khóa Ngoại đó. Mục đích của việc tạo chỉ mục này là gì?

  • A. Để đảm bảo cột Khóa Ngoại luôn chứa giá trị duy nhất.
  • B. Để cho phép cột Khóa Ngoại chứa giá trị NULL.
  • C. Để tăng tốc độ thực hiện các thao tác kiểm tra tính toàn vẹn tham chiếu và các truy vấn kết nối (JOIN) giữa bảng cha và bảng con.
  • D. Để tự động điền giá trị cho cột Khóa Ngoại.

Câu 23: Trong một công cụ thiết kế cơ sở dữ liệu đồ họa, mối quan hệ Khóa Ngoại giữa hai bảng thường được biểu diễn bằng hình ảnh nào?

  • A. Một đường nối giữa cột Khóa Ngoại ở bảng con và cột Khóa Chính ở bảng cha.
  • B. Một biểu tượng khóa nhỏ bên cạnh tên bảng.
  • C. Màu sắc khác biệt cho các cột Khóa Ngoại.
  • D. Một bảng riêng biệt liệt kê tất cả các Khóa Ngoại.

Câu 24: Giả sử bạn đang thiết kế một hệ thống quản lý thư viện với các bảng `Sach(MaSach, TenSach, ...)` và `DocGia(MaDocGia, TenDocGia, ...)`. Để ghi lại việc mượn sách, bạn tạo bảng `MuonTra(MaMuonTra, MaSach, MaDocGia, NgayMuon, NgayTra)`. Bảng `MuonTra` này sẽ có các Khóa Ngoại tham chiếu đến bảng nào?

  • A. Chỉ tham chiếu đến bảng `Sach`.
  • B. Chỉ tham chiếu đến bảng `DocGia`.
  • C. Tham chiếu đến bảng `MuonTra` chính nó.
  • D. Tham chiếu đến cả bảng `Sach` và bảng `DocGia`.

Câu 25: Điều nào sau đây KHÔNG phải là một lý do tốt để chọn một cột làm Khóa Chính?

  • A. Giá trị của cột đó là duy nhất cho mỗi bản ghi.
  • B. Cột đó chứa thông tin cá nhân nhạy cảm hoặc có khả năng thay đổi cao (ví dụ: số điện thoại).
  • C. Cột đó luôn có giá trị (không NULL).
  • D. Giá trị của cột đó là ngắn gọn và hiệu quả cho việc tìm kiếm.

Câu 26: Khóa Ngoại có thể bao gồm một hoặc nhiều cột. Nếu Khóa Ngoại bao gồm nhiều cột, điều gì phải đúng về các cột này khi tham chiếu đến Khóa Chính của bảng cha?

  • A. Tập hợp các cột Khóa Ngoại phải khớp với tập hợp các cột của Khóa Chính ở bảng cha về số lượng, thứ tự và kiểu dữ liệu.
  • B. Chỉ cần số lượng cột khớp nhau, thứ tự và kiểu dữ liệu không quan trọng.
  • C. Các cột Khóa Ngoại phải có tên khác hoàn toàn so với các cột Khóa Chính ở bảng cha.
  • D. Chỉ một trong các cột Khóa Ngoại cần khớp với một cột trong Khóa Chính của bảng cha.

Câu 27: Khi tạo bảng bằng câu lệnh SQL, từ khóa nào được sử dụng để định nghĩa một cột là Khóa Chính?

  • A. FOREIGN KEY
  • B. UNIQUE
  • C. PRIMARY KEY
  • D. REFERENCES

Câu 28: Trong một cơ sở dữ liệu quản lý dự án, bạn có bảng `DuAn(MaDA, TenDA)` và bảng `NhanVien_DuAn(MaNVDA, MaNV, MaDA, VaiTro)`. `MaDA` là PK của `DuAn`, `MaNV` là PK của `NhanVien`. `MaNV` và `MaDA` trong `NhanVien_DuAn` là các Khóa Ngoại. Bảng `NhanVien_DuAn` này thể hiện mối quan hệ nào giữa `NhanVien` và `DuAn`?

  • A. Một-một (One-to-One).
  • B. Một-nhiều (One-to-Many).
  • C. Nhiều-một (Many-to-One).
  • D. Nhiều-nhiều (Many-to-Many).

Câu 29: Khi tạo Khóa Ngoại bằng giao diện đồ họa, bạn thường phải chọn bảng nào chứa cột làm Khóa Ngoại và bảng nào chứa Khóa Chính mà Khóa Ngoại đó sẽ tham chiếu tới. Nếu bạn đang tạo Khóa Ngoại trên cột `MaKhoa` của bảng `SinhVien` để liên kết với bảng `Khoa`, bạn sẽ chọn bảng nào làm bảng con và bảng nào làm bảng cha?

  • A. Bảng con là `Khoa`, bảng cha là `SinhVien`.
  • B. Bảng con là `SinhVien`, bảng cha là `Khoa`.
  • C. Cả hai đều là bảng con.
  • D. Cả hai đều là bảng cha.

Câu 30: Điều nào sau đây là đúng nhất khi nói về việc tạo Khóa Ngoại trong cơ sở dữ liệu quan hệ?

  • A. Khóa Ngoại chỉ có thể tham chiếu đến Khóa Chính của cùng một bảng.
  • B. Một bảng chỉ có thể có tối đa một Khóa Ngoại.
  • C. Khóa Ngoại thiết lập một liên kết giữa hai bảng dựa trên các giá trị cột khớp nhau, nơi cột ở bảng con tham chiếu đến Khóa Chính (hoặc UNIQUE key) ở bảng cha.
  • D. Việc tạo Khóa Ngoại là tùy chọn và không ảnh hưởng đến tính toàn vẹn dữ liệu.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 1: Trong thiết kế cơ sở dữ liệu, khi tạo lập bảng `DonHang` và muốn liên kết mỗi đơn hàng với một khách hàng duy nhất từ bảng `KhachHang`, bạn cần thêm trường nào vào bảng `DonHang` và thiết lập loại ràng buộc nào phổ biến nhất để thực hiện liên kết này?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 2: Mục đích chính của việc sử dụng Khóa Ngoại (Foreign Key) trong cơ sở dữ liệu là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 3: Giả sử bạn có bảng `SanPham(MaSP, TenSP, Gia)` và bảng `LoaiSanPham(MaLoai, TenLoai)`. Để thể hiện mối quan hệ 'một loại sản phẩm có nhiều sản phẩm', bạn sẽ đặt Khóa Ngoại ở bảng nào và nó sẽ tham chiếu đến khóa chính của bảng nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 4: Khi tạo một Khóa Ngoại `FK_A` trong bảng `BangA` để tham chiếu đến Khóa Chính `PK_B` trong bảng `BangB`, điều kiện nào sau đây là BẮT BUỘC phải đúng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 5: Trong một mối quan hệ Khóa Ngoại, bảng chứa Khóa Ngoại được gọi là bảng con (child table), còn bảng mà Khóa Ngoại tham chiếu tới Khóa Chính của nó được gọi là bảng cha (parent table). Điều nào sau đây là đúng về mối quan hệ thêm dữ liệu giữa bảng cha và bảng con?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 6: Bạn có bảng `TacGia(MaTG, TenTG)` với `MaTG` là Khóa Chính và bảng `Sach(MaSach, TenSach, MaTG)` với `MaSach` là Khóa Chính và `MaTG` là Khóa Ngoại tham chiếu đến bảng `TacGia`. Nếu bạn cố gắng thêm một cuốn sách mới vào bảng `Sach` với giá trị `MaTG` không tồn tại trong bảng `TacGia`, điều gì sẽ xảy ra (với cài đặt ràng buộc khóa ngoại mặc định)?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 7: Khóa Chính (Primary Key) và ràng buộc DUY NHẤT (UNIQUE constraint) đều đảm bảo tính duy nhất của dữ liệu trong cột hoặc tập hợp cột. Sự khác biệt cơ bản nhất giữa chúng là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 8: Khi sử dụng các công cụ đồ họa để thiết kế cơ sở dữ liệu (như phpMyAdmin, MySQL Workbench, v.v.), việc tạo Khóa Ngoại thường bao gồm những bước chính nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 9: Cột được chọn làm Khóa Chính thường có thuộc tính NOT NULL. Tại sao thuộc tính này lại quan trọng đối với Khóa Chính?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 10: Giả sử bạn có bảng `LopHoc(MaLop, TenLop, MaGVCN)` và bảng `GiaoVien(MaGV, TenGV)`. `MaLop` và `MaGV` lần lượt là Khóa Chính của hai bảng. Để đảm bảo rằng `MaGVCN` trong `LopHoc` luôn là một `MaGV` hợp lệ tồn tại trong bảng `GiaoVien`, bạn sẽ thiết lập ràng buộc Khóa Ngoại trên cột nào và tham chiếu đến cột nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 11: Khi xóa một bản ghi từ bảng cha (parent table) mà bản ghi đó đang được tham chiếu bởi Khóa Ngoại trong bảng con (child table), hành động mặc định (RESTRICT hoặc NO ACTION) của hầu hết các hệ quản trị cơ sở dữ liệu là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 12: Bạn có bảng `NhanVien(MaNV, TenNV, MaPhongBan)` và bảng `PhongBan(MaPB, TenPB)`. `MaNV` và `MaPB` là Khóa Chính. `MaPhongBan` trong `NhanVien` là Khóa Ngoại tham chiếu đến `MaPB` trong `PhongBan`. Nếu bạn muốn cho phép một nhân viên có thể chưa thuộc phòng ban nào (tức là `MaPhongBan` có thể không có giá trị), bạn cần thiết lập thuộc tính gì cho cột `MaPhongBan` trong bảng `NhanVien` khi tạo bảng?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 13: Ràng buộc nào sau đây đảm bảo rằng một cột hoặc tập hợp các cột trong một bảng KHÔNG chứa giá trị trùng lặp, nhưng vẫn cho phép giá trị NULL (nếu không có ràng buộc NOT NULL bổ sung)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 14: Khi tạo Khóa Ngoại, việc đặt tên cho ràng buộc Khóa Ngoại có ý nghĩa gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 15: Giả sử bạn có bảng `MonHoc(MaMH, TenMH)` và bảng `Diem(MaDiem, MaSV, MaMH, DiemSo)`. `MaMH` trong `MonHoc` là PK. `MaSV` trong `Diem` là FK tham chiếu bảng `SinhVien`, và `MaMH` trong `Diem` là FK tham chiếu bảng `MonHoc`. Nếu bạn muốn xóa một môn học khỏi bảng `MonHoc`, nhưng chỉ muốn các bản ghi điểm liên quan trong bảng `Diem` được đặt giá trị `MaMH` thành NULL (nếu cột cho phép NULL), bạn sẽ thiết lập hành động tham chiếu nào cho Khóa Ngoại `MaMH` trong bảng `Diem`?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 16: Khi tạo bảng trong một công cụ quản lý cơ sở dữ liệu, bước nào thường được thực hiện sau khi đã định nghĩa tên và kiểu dữ liệu cho tất cả các cột?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 17: Điều nào sau đây là một lợi ích trực tiếp của việc sử dụng Khóa Ngoại để tạo liên kết giữa các bảng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 18: Trong ngữ cảnh cơ sở dữ liệu quan hệ, mối quan hệ 'Một-nhiều' (One-to-Many) giữa hai bảng A và B (ví dụ: Một Khoa có nhiều Sinh viên) thường được thể hiện bằng cách nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 19: Giả sử bạn đã tạo bảng `KhachHang(MaKH, TenKH)` với `MaKH` là PK và bảng `DonHang(MaDH, NgayDH)` với `MaDH` là PK. Bạn cần thêm cột `MaKH` vào bảng `DonHang` để làm Khóa Ngoại tham chiếu đến bảng `KhachHang`. Kiểu dữ liệu của cột `MaKH` mới thêm vào bảng `DonHang` phải như thế nào so với kiểu dữ liệu của cột `MaKH` trong bảng `KhachHang`?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 20: Khi thiết kế cơ sở dữ liệu, việc lựa chọn trường nào làm Khóa Chính nên dựa trên tiêu chí nào là quan trọng nhất?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 21: Bạn có bảng `BaiViet(MaBaiViet, TieuDe, NoiDung, MaTacGia)` và bảng `TacGia(MaTacGia, TenTacGia)`. `MaBaiViet` là PK của `BaiViet`, `MaTacGia` là PK của `TacGia`. `MaTacGia` trong `BaiViet` là FK tham chiếu đến `TacGia`. Điều gì xảy ra nếu bạn cố gắng cập nhật giá trị `MaTacGia` trong một bản ghi của bảng `BaiViet` thành một giá trị không tồn tại trong bảng `TacGia`?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 22: Khi bạn tạo một Khóa Ngoại, hệ quản trị cơ sở dữ liệu thường tự động tạo một chỉ mục (index) trên cột Khóa Ngoại đó. Mục đích của việc tạo chỉ mục này là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 23: Trong một công cụ thiết kế cơ sở dữ liệu đồ họa, mối quan hệ Khóa Ngoại giữa hai bảng thường được biểu diễn bằng hình ảnh nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 24: Giả sử bạn đang thiết kế một hệ thống quản lý thư viện với các bảng `Sach(MaSach, TenSach, ...)` và `DocGia(MaDocGia, TenDocGia, ...)`. Để ghi lại việc mượn sách, bạn tạo bảng `MuonTra(MaMuonTra, MaSach, MaDocGia, NgayMuon, NgayTra)`. Bảng `MuonTra` này sẽ có các Khóa Ngoại tham chiếu đến bảng nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 25: Điều nào sau đây KHÔNG phải là một lý do tốt để chọn một cột làm Khóa Chính?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 26: Khóa Ngoại có thể bao gồm một hoặc nhiều cột. Nếu Khóa Ngoại bao gồm nhiều cột, điều gì phải đúng về các cột này khi tham chiếu đến Khóa Chính của bảng cha?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 27: Khi tạo bảng bằng câu lệnh SQL, từ khóa nào được sử dụng để định nghĩa một cột là Khóa Chính?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 28: Trong một cơ sở dữ liệu quản lý dự án, bạn có bảng `DuAn(MaDA, TenDA)` và bảng `NhanVien_DuAn(MaNVDA, MaNV, MaDA, VaiTro)`. `MaDA` là PK của `DuAn`, `MaNV` là PK của `NhanVien`. `MaNV` và `MaDA` trong `NhanVien_DuAn` là các Khóa Ngoại. Bảng `NhanVien_DuAn` này thể hiện mối quan hệ nào giữa `NhanVien` và `DuAn`?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 29: Khi tạo Khóa Ngoại bằng giao diện đồ họa, bạn thường phải chọn bảng nào chứa cột làm Khóa Ngoại và bảng nào chứa Khóa Chính mà Khóa Ngoại đó sẽ tham chiếu tới. Nếu bạn đang tạo Khóa Ngoại trên cột `MaKhoa` của bảng `SinhVien` để liên kết với bảng `Khoa`, bạn sẽ chọn bảng nào làm bảng con và bảng nào làm bảng cha?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 09

Câu 30: Điều nào sau đây là đúng nhất khi nói về việc tạo Khóa Ngoại trong cơ sở dữ liệu quan hệ?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 10

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài - Đề 10 đượ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 thiết kế cơ sở dữ liệu, mục đích chính của việc sử dụng Khóa chính (Primary Key) là gì?

  • A. Để liên kết bảng hiện tại với các bảng khác.
  • B. Để đảm bảo rằng giá trị trong trường này không bao giờ rỗng (NULL).
  • C. Để tạo chỉ mục giúp truy vấn dữ liệu nhanh hơn.
  • D. Để định danh duy nhất cho mỗi bản ghi trong bảng.

Câu 2: Giả sử bạn có hai bảng trong cơ sở dữ liệu: `LopHoc (MaLop PK, TenLop)` và `HocSinh (MaHS PK, TenHS, MaLop)`. Để thiết lập mối quan hệ giữa Học sinh và Lớp học (một lớp có nhiều học sinh), trường nào trong bảng `HocSinh` sẽ đóng vai trò là Khóa ngoài (Foreign Key)?

  • A. MaHS
  • B. TenHS
  • C. MaLop
  • D. Không có trường nào trong bảng HọcSinh có thể làm khóa ngoài.

Câu 3: Khi khai báo Khóa ngoài (Foreign Key) cho một trường trong bảng A tham chiếu đến Khóa chính (Primary Key) trong bảng B, điều kiện bắt buộc đối với kiểu dữ liệu của trường khóa ngoài và trường khóa chính được tham chiếu là gì?

  • A. Phải có kiểu dữ liệu tương thích (thường là giống nhau).
  • B. Kiểu dữ liệu của khóa ngoài phải là VARCHAR.
  • C. Kiểu dữ liệu của khóa chính phải là INT.
  • D. Không có yêu cầu nào về kiểu dữ liệu, hệ quản trị CSDL tự động chuyển đổi.

Câu 4: Tính toàn vẹn tham chiếu (Referential Integrity) trong cơ sở dữ liệu là gì?

  • A. Đảm bảo tất cả các trường đều có giá trị không rỗng.
  • B. Đảm bảo rằng mọi giá trị trong trường Khóa ngoài đều tồn tại trong trường Khóa chính được tham chiếu.
  • C. Đảm bảo rằng mỗi bản ghi trong bảng là duy nhất.
  • D. Đảm bảo rằng dữ liệu được nhập theo đúng định dạng.

Câu 5: Giả sử bạn có bảng `DonHang (MaDH PK, NgayDat, MaKH FK)` tham chiếu đến bảng `KhachHang (MaKH PK, TenKH)`. Nếu bạn cố gắng thêm một bản ghi mới vào bảng `DonHang` với giá trị `MaKH` không tồn tại trong bảng `KhachHang`, điều gì sẽ xảy ra nếu ràng buộc Khóa ngoài được thiết lập đúng?

  • A. Hệ quản trị cơ sở dữ liệu sẽ từ chối thao tác thêm mới.
  • B. Bản ghi sẽ được thêm vào nhưng trường MaKH sẽ có giá trị NULL.
  • C. Hệ quản trị cơ sở dữ liệu sẽ tự động thêm một khách hàng mới với MaKH đó.
  • D. Thao tác thêm mới sẽ thành công mà không có vấn đề gì.

Câu 6: Trong mối quan hệ Một-Nhiều giữa hai bảng, Khóa ngoài (Foreign Key) thường được đặt ở bảng nào?

  • A. Bảng ở phía "Một" của mối quan hệ.
  • B. Bảng ở phía "Nhiều" của mối quan hệ.
  • C. Ở cả hai bảng.
  • D. Ở một bảng thứ ba kết nối hai bảng đó.

Câu 7: Bạn có hai bảng `SanPham (MaSP PK, TenSP, MaLoaiSP FK)` và `LoaiSanPham (MaLoaiSP PK, TenLoai)`. Mối quan hệ giữa hai bảng này là gì?

  • A. Một-Nhiều (Một loại sản phẩm có nhiều sản phẩm).
  • B. Nhiều-Một (Nhiều loại sản phẩm thuộc một sản phẩm).
  • C. Một-Một (Một loại sản phẩm chỉ có một sản phẩm).
  • D. Nhiều-Nhiều (Nhiều loại sản phẩm có nhiều sản phẩm và ngược lại).

Câu 8: Khi thiết kế bảng `ChiTietDonHang (MaCTDH PK, MaDH FK, MaSP FK, SoLuong)` để lưu trữ các sản phẩm trong mỗi đơn hàng, bảng này có hai Khóa ngoài: `MaDH` tham chiếu đến bảng `DonHang` và `MaSP` tham chiếu đến bảng `SanPham`. Điều này thể hiện mối quan hệ nào?

  • A. Mối quan hệ Một-Một giữa DonHang và SanPham.
  • B. Mối quan hệ Một-Nhiều giữa ChiTietDonHang và DonHang.
  • C. Mối quan hệ Một-Nhiều giữa ChiTietDonHang và SanPham.
  • D. Mối quan hệ Nhiều-Nhiều giữa DonHang và SanPham, được phân rã thông qua bảng trung gian ChiTietDonHang.

Câu 9: Trong một hệ quản trị cơ sở dữ liệu, khi thiết lập ràng buộc Khóa ngoài, tùy chọn `ON DELETE CASCADE` có ý nghĩa gì?

  • A. Ngăn cấm việc xóa bản ghi ở bảng cha nếu có bản ghi tương ứng ở bảng con.
  • B. Khi xóa bản ghi ở bảng cha, trường khóa ngoài ở bảng con sẽ được đặt giá trị NULL.
  • C. Khi xóa bản ghi ở bảng cha, tất cả các bản ghi tương ứng ở bảng con cũng sẽ bị xóa theo.
  • D. Không có hành động nào xảy ra ở bảng con khi xóa bản ghi ở bảng cha.

Câu 10: Tùy chọn `ON DELETE RESTRICT` (hoặc NO ACTION) trong ràng buộc Khóa ngoài có tác dụng gì?

  • A. Ngăn cấm việc xóa bản ghi ở bảng cha nếu có bất kỳ bản ghi nào ở bảng con đang tham chiếu đến nó.
  • B. Tự động xóa tất cả bản ghi con khi bản ghi cha bị xóa.
  • C. Đặt giá trị NULL cho trường khóa ngoài ở bảng con khi bản ghi cha bị xóa.
  • D. Cho phép xóa bản ghi cha mà không ảnh hưởng đến bản ghi con.

Câu 11: Tùy chọn `ON UPDATE CASCADE` trong ràng buộc Khóa ngoài có ý nghĩa gì?

  • A. Ngăn cấm việc cập nhật giá trị khóa chính ở bảng cha nếu có bản ghi con tham chiếu.
  • B. Khi cập nhật giá trị khóa chính ở bảng cha, trường khóa ngoài ở bảng con sẽ được đặt giá trị NULL.
  • C. Không có hành động nào xảy ra ở bảng con khi cập nhật khóa chính ở bảng cha.
  • D. Khi cập nhật giá trị khóa chính ở bảng cha, giá trị tương ứng ở trường khóa ngoài của các bản ghi con cũng sẽ tự động được cập nhật theo.

Câu 12: Sự khác biệt cơ bản giữa Khóa chính (Primary Key) và Khóa chống trùng lặp (Unique Key) là gì?

  • A. Khóa chính có thể chứa giá trị NULL, còn Khóa chống trùng lặp thì không.
  • B. Một bảng chỉ có thể có một Khóa chính, nhưng có thể có nhiều Khóa chống trùng lặp.
  • C. Khóa chính được dùng để liên kết bảng, còn Khóa chống trùng lặp thì không.
  • D. Khóa chính không thể là tập hợp nhiều trường, còn Khóa chống trùng lặp thì có thể.

Câu 13: Giả sử bảng `SinhVien (MaSV PK, TenSV, Email)` và bạn muốn đảm bảo rằng không có hai sinh viên nào có cùng địa chỉ Email. Bạn sẽ sử dụng loại ràng buộc nào cho trường `Email`?

  • A. Khóa chính (Primary Key)
  • B. Khóa ngoài (Foreign Key)
  • C. Khóa chống trùng lặp (Unique Key)
  • D. Chỉ mục (Index)

Câu 14: Khi tạo một bảng mới trong hệ quản trị cơ sở dữ liệu (ví dụ như MySQL Workbench hoặc phpMyAdmin), thao tác nào thường được sử dụng để thêm một cột (trường) mới vào thiết kế bảng?

  • A. Nhấp chuột phải vào dòng trường hiện có và chọn "Add column" hoặc sử dụng phím tắt tương ứng (ví dụ: Ctrl+Insert).
  • B. Nhấp đúp vào tên bảng trong danh sách.
  • C. Sử dụng tùy chọn "Delete Table".
  • D. Kéo và thả từ một bảng khác.

Câu 15: Trong quá trình thiết kế bảng, thuộc tính `AUTO_INCREMENT` thường được áp dụng cho trường nào?

  • A. Trường Khóa ngoài để tự động tạo liên kết.
  • B. Trường Khóa chính có kiểu dữ liệu số nguyên để tự động tạo mã định danh duy nhất.
  • C. Trường lưu trữ ngày tháng để tự động ghi nhận thời gian hiện tại.
  • D. Bất kỳ trường nào có kiểu dữ liệu chuỗi.

Câu 16: Giả sử bạn có bảng `TacGia (MaTG PK, TenTG)` và `Sach (MaSach PK, TenSach, MaTG FK)`. Khi thêm một bản ghi mới vào bảng `Sach`, giá trị của trường `MaTG`:

  • A. Phải là một số bất kỳ.
  • B. Phải là giá trị NULL.
  • C. Phải là một giá trị MaTG hiện có trong bảng `TacGia` (trừ khi Khóa ngoài cho phép NULL).
  • D. Sẽ tự động được tạo ra.

Câu 17: Điều nào sau đây KHÔNG phải là lợi ích của việc sử dụng Khóa ngoài để thiết lập mối quan hệ giữa các bảng?

  • A. Đảm bảo tính toàn vẹn dữ liệu.
  • B. Giúp truy vấn dữ liệu liên quan từ nhiều bảng dễ dàng hơn.
  • C. Ngăn chặn việc nhập dữ liệu "mồ côi" (dữ liệu con không có cha tương ứng).
  • D. Tự động tạo chỉ mục cho tất cả các trường trong bảng.

Câu 18: Khi một trường được khai báo là Khóa chính (Primary Key), mặc định nó có những đặc điểm nào?

  • A. Không cho phép giá trị NULL và phải là duy nhất.
  • B. Cho phép giá trị NULL nhưng phải là duy nhất.
  • C. Không bắt buộc phải là duy nhất nhưng không cho phép giá trị NULL.
  • D. Cho phép cả giá trị NULL và giá trị trùng lặp.

Câu 19: Giả sử bạn có bảng `PhongBan (MaPB PK, TenPB)` và `NhanVien (MaNV PK, TenNV, MaPB FK)`. Nếu bạn muốn xóa một Phòng ban khỏi bảng `PhongBan`, nhưng chỉ khi phòng ban đó không còn nhân viên nào liên kết, bạn nên thiết lập ràng buộc Khóa ngoài với tùy chọn `ON DELETE` nào?

  • A. CASCADE
  • B. RESTRICT (hoặc NO ACTION)
  • C. SET NULL
  • D. SET DEFAULT

Câu 20: Bạn thiết kế cơ sở dữ liệu cho một cửa hàng bán lẻ với các bảng `HoaDon (SoHD PK, NgayLap, MaKH FK)` và `ChiTietHoaDon (SoCTHD PK, SoHD FK, MaSP FK, SoLuong)`. Khóa ngoài `SoHD` trong bảng `ChiTietHoaDon` tham chiếu đến bảng nào và có ý nghĩa gì?

  • A. Tham chiếu đến bảng `HoaDon`, liên kết chi tiết hóa đơn với hóa đơn chính.
  • B. Tham chiếu đến bảng `MaKH`, liên kết chi tiết hóa đơn với khách hàng.
  • C. Tham chiếu đến bảng `MaSP`, liên kết chi tiết hóa đơn với sản phẩm.
  • D. Tham chiếu đến bảng `SoLuong`, liên kết chi tiết hóa đơn với số lượng.

Câu 21: Khi tạo Khóa ngoài trong một công cụ quản lý cơ sở dữ liệu đồ họa, bước nào sau đây là cần thiết?

  • A. Xóa Khóa chính của bảng con.
  • B. Thay đổi kiểu dữ liệu của trường Khóa ngoài thành TEXT.
  • C. Chọn trường sẽ làm Khóa ngoài và chỉ định bảng cùng trường Khóa chính mà nó tham chiếu đến.
  • D. Thiết lập thuộc tính AUTO_INCREMENT cho trường Khóa ngoài.

Câu 22: Giả sử bạn có bảng `BaiHat (MaBH PK, TenBaiHat, MaNS FK)` tham chiếu đến bảng `NhacSi (MaNS PK, TenNS)`. Nếu bạn cố gắng cập nhật giá trị `MaNS` trong bảng `NhacSi` từ "NS001" thành "NS999", điều gì sẽ xảy ra nếu ràng buộc Khóa ngoài có tùy chọn `ON UPDATE CASCADE`?

  • A. Thao tác cập nhật sẽ bị từ chối.
  • B. Giá trị `MaNS` trong bảng `NhacSi` được cập nhật, nhưng các bản ghi trong `BaiHat` vẫn giữ giá trị "NS001".
  • C. Các bản ghi trong bảng `BaiHat` có `MaNS`="NS001" sẽ bị xóa.
  • D. Giá trị `MaNS` trong bảng `NhacSi` được cập nhật thành "NS999", và tất cả các bản ghi trong `BaiHat` có `MaNS`="NS001" cũng sẽ tự động được cập nhật thành "NS999".

Câu 23: Lợi ích chính của việc sử dụng ràng buộc Khóa chống trùng lặp (Unique Key) cho một trường hoặc một tập hợp các trường là gì?

  • A. Đảm bảo rằng các giá trị trong trường hoặc tập hợp các trường đó không bị trùng lặp trong toàn bộ bảng.
  • B. Tạo liên kết giữa bảng này và bảng khác.
  • C. Đảm bảo giá trị không rỗng.
  • D. Tự động tạo giá trị cho trường.

Câu 24: Khi thiết kế cơ sở dữ liệu, việc xác định Khóa chính và Khóa ngoài giúp chúng ta mô tả điều gì giữa các thực thể (đối tượng) trong thế giới thực?

  • A. Thuộc tính của thực thể.
  • B. Mối quan hệ giữa các thực thể.
  • C. Kiểu dữ liệu của thuộc tính.
  • D. Kích thước lưu trữ của cơ sở dữ liệu.

Câu 25: Bạn có hai bảng `Khoa (MaKhoa PK, TenKhoa)` và `GiaoVien (MaGV PK, TenGV, MaKhoa FK)`. Nếu bạn cố gắng xóa một Khoa mà vẫn còn giáo viên thuộc khoa đó, và ràng buộc Khóa ngoài có tùy chọn `ON DELETE SET NULL`, điều gì sẽ xảy ra?

  • A. Thao tác xóa Khoa bị từ chối.
  • B. Khoa bị xóa và tất cả giáo viên thuộc khoa đó cũng bị xóa.
  • C. Khoa bị xóa và trường `MaKhoa` của các giáo viên thuộc khoa đó được đặt thành NULL (yêu cầu trường MaKhoa trong GiaoVien cho phép NULL).
  • D. Khoa bị xóa và trường `MaGV` của các giáo viên thuộc khoa đó được đặt thành NULL.

Câu 26: Trong một bảng, Khóa chính (Primary Key):

  • A. Luôn là duy nhất và không được chứa giá trị NULL.
  • B. Có thể chứa giá trị NULL nhưng phải là duy nhất.
  • C. Có thể trùng lặp giá trị nhưng không được chứa giá trị NULL.
  • D. Có thể chứa cả giá trị NULL và giá trị trùng lặp.

Câu 27: Giả sử bạn cần thiết kế cơ sở dữ liệu cho việc quản lý các buổi biểu diễn âm nhạc, bao gồm thông tin về Ban nhạc và các Buổi diễn. Mỗi buổi diễn chỉ có một ban nhạc biểu diễn, nhưng một ban nhạc có thể có nhiều buổi diễn. Cấu trúc bảng hợp lý nhất để thể hiện mối quan hệ này sẽ là:

  • A. Bảng `BanNhac (MaBanNhac PK, TenBanNhac)` và bảng `BuoiDien (MaBuoiDien PK, TenBuoiDien, MaBanNhac PK)`.
  • B. Bảng `BanNhac (MaBanNhac PK, TenBanNhac, MaBuoiDien FK)` tham chiếu đến bảng `BuoiDien (MaBuoiDien PK, TenBuoiDien)`.
  • C. Bảng `BanNhac (MaBanNhac PK, TenBanNhac)` và bảng `BuoiDien (MaBuoiDien PK, TenBuoiDien, MaBanNhac FK)` tham chiếu đến bảng `BanNhac`.
  • D. Một bảng duy nhất chứa cả thông tin ban nhạc và buổi diễn, lặp lại thông tin ban nhạc cho mỗi buổi diễn.

Câu 28: Khi tạo Khóa ngoài trong một công cụ đồ họa, bạn thường cần thực hiện các bước sau: 1. Chọn trường sẽ làm khóa ngoài. 2. Chỉ định bảng và trường khóa chính được tham chiếu. 3. Đặt tên cho ràng buộc khóa ngoài. 4. Chọn các tùy chọn ON UPDATE/ON DELETE. Thứ tự thực hiện các bước này trong giao diện đồ họa phổ biến nhất là gì?

  • A. 1 → 2 → 3 → 4
  • B. 2 → 1 → 3 → 4
  • C. 3 → 1 → 2 → 4
  • D. 1 → 3 → 2 → 4

Câu 29: Điều nào sau đây mô tả chính xác nhất vai trò của Khóa ngoài (Foreign Key)?

  • A. Ngăn chặn các bản ghi trùng lặp trong một bảng.
  • B. Đảm bảo mỗi bản ghi có một định danh duy nhất.
  • C. Thiết lập và duy trì mối liên kết giữa dữ liệu của hai bảng khác nhau.
  • D. Tăng tốc độ tìm kiếm dữ liệu trong bảng.

Câu 30: Giả sử bạn có bảng `QuocGia (MaQG PK, TenQG)` và `ThanhPho (MaTP PK, TenTP, MaQG FK)`. Nếu bạn cố gắng thêm một thành phố mới với `MaQG` là "VN", nhưng trong bảng `QuocGia` không tồn tại `MaQG` là "VN", điều gì sẽ xảy ra?

  • A. Thành phố sẽ được thêm vào, nhưng trường `MaQG` sẽ để trống.
  • B. Hệ quản trị CSDL sẽ báo lỗi vi phạm ràng buộc Khóa ngoài và không cho phép thêm bản ghi.
  • C. Hệ quản trị CSDL sẽ tự động thêm quốc gia "VN" vào bảng `QuocGia`.
  • D. Thành phố sẽ được thêm vào mà không có vấn đề gì.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 1: Trong thiết kế cơ sở dữ liệu, mục đích chính của việc sử dụng Khóa chính (Primary Key) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 2: Giả sử bạn có hai bảng trong cơ sở dữ liệu: `LopHoc (MaLop PK, TenLop)` và `HocSinh (MaHS PK, TenHS, MaLop)`. Để thiết lập mối quan hệ giữa Học sinh và Lớp học (một lớp có nhiều học sinh), trường nào trong bảng `HocSinh` sẽ đóng vai trò là Khóa ngoài (Foreign Key)?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 3: Khi khai báo Khóa ngoài (Foreign Key) cho một trường trong bảng A tham chiếu đến Khóa chính (Primary Key) trong bảng B, điều kiện bắt buộc đối với kiểu dữ liệu của trường khóa ngoài và trường khóa chính được tham chiếu là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 4: Tính toàn vẹn tham chiếu (Referential Integrity) trong cơ sở dữ liệu là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 5: Giả sử bạn có bảng `DonHang (MaDH PK, NgayDat, MaKH FK)` tham chiếu đến bảng `KhachHang (MaKH PK, TenKH)`. Nếu bạn cố gắng thêm một bản ghi mới vào bảng `DonHang` với giá trị `MaKH` không tồn tại trong bảng `KhachHang`, điều gì sẽ xảy ra nếu ràng buộc Khóa ngoài được thiết lập đúng?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 6: Trong mối quan hệ Một-Nhiều giữa hai bảng, Khóa ngoài (Foreign Key) thường được đặt ở bảng nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 7: Bạn có hai bảng `SanPham (MaSP PK, TenSP, MaLoaiSP FK)` và `LoaiSanPham (MaLoaiSP PK, TenLoai)`. Mối quan hệ giữa hai bảng này là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 8: Khi thiết kế bảng `ChiTietDonHang (MaCTDH PK, MaDH FK, MaSP FK, SoLuong)` để lưu trữ các sản phẩm trong mỗi đơn hàng, bảng này có hai Khóa ngoài: `MaDH` tham chiếu đến bảng `DonHang` và `MaSP` tham chiếu đến bảng `SanPham`. Điều này thể hiện mối quan hệ nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 9: Trong một hệ quản trị cơ sở dữ liệu, khi thiết lập ràng buộc Khóa ngoài, tùy chọn `ON DELETE CASCADE` có ý nghĩa gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 10: Tùy chọn `ON DELETE RESTRICT` (hoặc NO ACTION) trong ràng buộc Khóa ngoài có tác dụng gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 11: Tùy chọn `ON UPDATE CASCADE` trong ràng buộc Khóa ngoài có ý nghĩa gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 12: Sự khác biệt cơ bản giữa Khóa chính (Primary Key) và Khóa chống trùng lặp (Unique Key) là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 13: Giả sử bảng `SinhVien (MaSV PK, TenSV, Email)` và bạn muốn đảm bảo rằng không có hai sinh viên nào có cùng địa chỉ Email. Bạn sẽ sử dụng loại ràng buộc nào cho trường `Email`?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 14: Khi tạo một bảng mới trong hệ quản trị cơ sở dữ liệu (ví dụ như MySQL Workbench hoặc phpMyAdmin), thao tác nào thường được sử dụng để thêm một cột (trường) mới vào thiết kế bảng?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 15: Trong quá trình thiết kế bảng, thuộc tính `AUTO_INCREMENT` thường được áp dụng cho trường nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 16: Giả sử bạn có bảng `TacGia (MaTG PK, TenTG)` và `Sach (MaSach PK, TenSach, MaTG FK)`. Khi thêm một bản ghi mới vào bảng `Sach`, giá trị của trường `MaTG`:

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 17: Điều nào sau đây KHÔNG phải là lợi ích của việc sử dụng Khóa ngoài để thiết lập mối quan hệ giữa các bảng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 18: Khi một trường được khai báo là Khóa chính (Primary Key), mặc định nó có những đặc điểm nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 19: Giả sử bạn có bảng `PhongBan (MaPB PK, TenPB)` và `NhanVien (MaNV PK, TenNV, MaPB FK)`. Nếu bạn muốn xóa một Phòng ban khỏi bảng `PhongBan`, nhưng chỉ khi phòng ban đó không còn nhân viên nào liên kết, bạn nên thiết lập ràng buộc Khóa ngoài với tùy chọn `ON DELETE` nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 20: Bạn thiết kế cơ sở dữ liệu cho một cửa hàng bán lẻ với các bảng `HoaDon (SoHD PK, NgayLap, MaKH FK)` và `ChiTietHoaDon (SoCTHD PK, SoHD FK, MaSP FK, SoLuong)`. Khóa ngoài `SoHD` trong bảng `ChiTietHoaDon` tham chiếu đến bảng nào và có ý nghĩa gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 21: Khi tạo Khóa ngoài trong một công cụ quản lý cơ sở dữ liệu đồ họa, bước nào sau đây là cần thiết?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 22: Giả sử bạn có bảng `BaiHat (MaBH PK, TenBaiHat, MaNS FK)` tham chiếu đến bảng `NhacSi (MaNS PK, TenNS)`. Nếu bạn cố gắng cập nhật giá trị `MaNS` trong bảng `NhacSi` từ 'NS001' thành 'NS999', điều gì sẽ xảy ra nếu ràng buộc Khóa ngoài có tùy chọn `ON UPDATE CASCADE`?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 23: Lợi ích chính của việc sử dụng ràng buộc Khóa chống trùng lặp (Unique Key) cho một trường hoặc một tập hợp các trường là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 24: Khi thiết kế cơ sở dữ liệu, việc xác định Khóa chính và Khóa ngoài giúp chúng ta mô tả điều gì giữa các thực thể (đối tượng) trong thế giới thực?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 25: Bạn có hai bảng `Khoa (MaKhoa PK, TenKhoa)` và `GiaoVien (MaGV PK, TenGV, MaKhoa FK)`. Nếu bạn cố gắng xóa một Khoa mà vẫn còn giáo viên thuộc khoa đó, và ràng buộc Khóa ngoài có tùy chọn `ON DELETE SET NULL`, điều gì sẽ xảy ra?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 26: Trong một bảng, Khóa chính (Primary Key):

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 27: Giả sử bạn cần thiết kế cơ sở dữ liệu cho việc quản lý các buổi biểu diễn âm nhạc, bao gồm thông tin về Ban nhạc và các Buổi diễn. Mỗi buổi diễn chỉ có một ban nhạc biểu diễn, nhưng một ban nhạc có thể có nhiều buổi diễn. Cấu trúc bảng hợp lý nhất để thể hiện mối quan hệ này sẽ là:

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 28: Khi tạo Khóa ngoài trong một công cụ đồ họa, bạn thường cần thực hiện các bước sau: 1. Chọn trường sẽ làm khóa ngoài. 2. Chỉ định bảng và trường khóa chính được tham chiếu. 3. Đặt tên cho ràng buộc khóa ngoài. 4. Chọn các tùy chọn ON UPDATE/ON DELETE. Thứ tự thực hiện các bước này trong giao diện đồ họa phổ biến nhất là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 29: Điều nào sau đây mô tả chính xác nhất vai trò của Khóa ngoài (Foreign Key)?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 20: Thực hành tạo lập các bảng có khóa ngoài

Tags: Bộ đề 10

Câu 30: Giả sử bạn có bảng `QuocGia (MaQG PK, TenQG)` và `ThanhPho (MaTP PK, TenTP, MaQG FK)`. Nếu bạn cố gắng thêm một thành phố mới với `MaQG` là 'VN', nhưng trong bảng `QuocGia` không tồn tại `MaQG` là 'VN', điều gì sẽ xảy ra?

Viết một bình luận