Tin học 11 · Chung, Khoa học máy tính và Tin học ứng dụng
Tin họcLớp 11Phần 7. THUD · Chủ đề 6. Thực hành tạo và khai thác cơ sở dữ liệu · Chọn định hướng, không bắt buộc KHMT

Bài 20 · THUD. Thực hành tạo lập các bảng có khóa ngoài

Mục tiêu bài học

  • Giải thích và vận dụng kiến thức về thực hành tạo lập các bảng có khóa ngoài.
  • Tạo hoặc đánh giá sản phẩm cụ thể, giải thích kết quả và kiểm tra điều kiện áp dụng.

Bài giảng

Hiểu cách hoạt động

Khóa ngoài giữ tham chiếu từ bảng con tới bảng cha. Kiểu và giá trị cần tương thích; MySQL phải dùng cấu hình/hệ lưu trữ hỗ trợ ràng buộc theo môi trường trường cấp. Tạo bảng cha trước bảng con, nhập cha trước con. Không tắt kiểm tra khóa để cho qua dữ liệu mồ côi. Giáo viên xác nhận MySQL8.0.16+vàInnoDB cho bài cóCHECK/khóa ngoài; phiên bản cũ có thể không thực thiCHECK như mong đợi.

Làm và tự kiểm tra

Nhiệm vụ nguyên bản: Tạo bảng Muon với khóa ngoài theo hai bảng cha đã có; kiểm tra mẫu MaDG=1, MaSach=11. Dữ liệu mẫu: DocGia(MaDG, Ten)=(1, An),(2, Binh); Sach(MaSach, Tua)=(11, Vuon cay),(12, Bau troi); Muon(MaMuon, MaDG, MaSach, SoNgay)=(101,1,11,7),(102,2,12,5),(103,1,12,3). Tất cả tên và giao dịch là giả định.

Quy trình: Kiểm tra khóa bảng cha → Tạo bảng con với tham chiếu → Nhập dữ liệu cha trước → Thử dòng hợp lệ và dòng có mã chưa tồn tại.

Mô hình hoàn chỉnh (dữ liệu mẫu, không phải báo cáo quan sát thật): ```sql
CREATE TABLE Muon (
MaMuon INT PRIMARY KEY,
MaDG INT NOT NULL,
MaSach INT NOT NULL,
SoNgay INT NOT NULL CHECK (SoNgay>=0),
FOREIGN KEY (MaDG) REFERENCES DocGia(MaDG),
FOREIGN KEY (MaSach) REFERENCES Sach(MaSach)
);

Sau khi đã nhập DocGia1,2 và Sach11,12, dòng(101,1,11,7)hợp lệ. Dòng(104,9,11,4)vi phạm MaDG nếu9chưa có. Không sửa bằng việc tắt FOREIGN KEY.

Ghi nhớ

Khóa ngoài giữ tham chiếu từ bảng con tới bảng cha.

Bài tập

Đã đúng 0/6 câu

  1. Đọc ngữ liệu

    Tạo bảngMuonmới trong môi trường riêng; chaDocGia1,2 vàSach11,12 đã có dữ liệu. Các hàngMuontrong đề là dữ liệu mẫu dự kiến,không khẳng định đã nhập vào bảng chưa tạo. DocGia(MaDG,Ten): (1,An),(2,Binh). Sach(MaSach,Tua): (11,Vuon cay),(12,Bau troi). Muon(MaMuon,MaDG,MaSach,SoNgay): (101,1,11,7),(102,2,12,5),(103,1,12,3). Tất cả giả định. Mỗi bài dùng bản mẫu riêng,không kế thừa UPDATE/DELETE của bài khác.

  2. Câu 1Mức 2Trắc nghiệm 1 đáp án

    Nên tạo bảng nào trước Muon?

  3. Câu 2Mức 2Đúng / Sai

    Mã9chưa có ở DocGia thì Muon trỏ9vi phạm ràng buộc.

  4. Câu 3Mức 2Trả lời ngắn

    Muon mẫu có mấy khóa ngoài?

  5. Câu 4Mức 2Trắc nghiệm 1 đáp án

    Khi thêm lượt nên nhập dữ liệu nào trước nếu chưa có?

  6. Câu 5Mức 2Đúng / Sai

    Khóa ngoài là cùng một khái niệm với vị trí hàng.

  7. Câu 6Mức 2Ghép nối

    Ghép tham chiếu.

    Chạm một ý bên trái rồi chạm ý tương ứng bên phải để ghép cặp.

  8. Câu 7Mức 3Tự luận

    Tạo bảng Muon với khóa ngoài theo hai bảng cha đã có; kiểm tra mẫu MaDG=1, MaSach=11. Dữ liệu mẫu: DocGia(MaDG, Ten)=(1, An),(2, Binh); Sach(MaSach, Tua)=(11, Vuon cay),(12, Bau troi); Muon(MaMuon, MaDG, MaSach, SoNgay)=(101,1,11,7),(102,2,12,5),(103,1,12,3). Tất cả tên và giao dịch là giả định. Trình bày sản phẩm hoặc quy trình đủ để người dạy kiểm tra; không chấm tự động thao tác phần mềm.

    0 từ

    0/10 ảnh

    Có thể chụp nhiều trang. Ảnh được lưu cùng bài làm và giáo viên sẽ chấm trên ảnh.

    Vẽ bài làm

    Ảnh bài làm

    Cuộn chuột hoặc chụm hai ngón để phóng to · kéo để di chuyển · phím R để xoay

  9. Câu 8Mức 4Tự luận

    Dòng hợp lệ về khóa nhưng SoNgay=-4, vi phạm gì và xử lí?

    0 từ

    0/10 ảnh

    Có thể chụp nhiều trang. Ảnh được lưu cùng bài làm và giáo viên sẽ chấm trên ảnh.

    Vẽ bài làm

    Ảnh bài làm

    Cuộn chuột hoặc chụm hai ngón để phóng to · kéo để di chuyển · phím R để xoay