Giáo án 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 4. Chủ đề 4. Giới thiệu các hệ cơ sở dữ liệu · Chung

Giáo án Bài 13. Cơ sở dữ liệu quan hệ

Kế hoạch bài dạy theo mẫu Công văn 5512/BGDĐT-GDTrH · 2 tiết (90 phút)

I. Mục tiêu

1. Kiến thức

  • Nêu được cách mô hình quan hệ tổ chức dữ liệu thành bảng, trong đó hàng là bản ghi và cột là thuộc tính (trường) có kiểu dữ liệu và ràng buộc.
  • Giải thích được khóa chính xác định duy nhất bản ghi và không được rỗng; vì sao tên người không phải lúc nào cũng phù hợp làm khóa chính.
  • Nêu được khóa ngoài là thuộc tính tham chiếu khóa chính của bảng khác để giữ liên hệ giữa các bảng.
  • Giải thích được quan hệ một–nhiều giữa hai bảng và liên kết các bảng dựa trên giá trị khóa, không dựa vào vị trí hàng.
  • Vận dụng được quy trình xác định bản ghi, chọn mã duy nhất, ghép khóa ngoài với bảng cha và kiểm tra trường hợp trùng hoặc không tồn tại để xác định khóa chính, khóa ngoài trong một mô hình dữ liệu cho trước.

2. Năng lực

a) Năng lực chung

  • Tự chủ và tự học: HS chủ động đọc ví dụ, tự xác định bản ghi, khóa chính, khóa ngoài trong phiếu học tập và tự kiểm tra đáp án trên học liệu số.
  • Giao tiếp và hợp tác: HS làm việc nhóm 4 người theo kĩ thuật mảnh ghép, trình bày và phản biện lập luận về việc chọn khóa chính.
  • Giải quyết vấn đề và sáng tạo: HS đề xuất mã duy nhất cho một tình huống quản lí thực tế và kiểm tra điều kiện trùng, không tồn tại của khóa ngoài.

b) Năng lực đặc thù

  • NLa: Sử dụng và quản lí các phương tiện công nghệ thông tin và truyền thông: HS sử dụng máy tính hoặc thiết bị di động để truy cập học liệu số và ghi lại sơ đồ bảng, khóa trong bài làm.
  • NLb: Ứng xử phù hợp trong môi trường số: HS khai thác dữ liệu mẫu giả định, không dùng thông tin cá nhân thật của bạn bè khi lấy ví dụ về tên người đọc.
  • NLc: Giải quyết vấn đề với sự hỗ trợ của công nghệ thông tin và truyền thông: HS dùng bảng và học liệu tương tác để kiểm tra khóa ngoài có trỏ đến giá trị hợp lệ hay không.
  • NLd: Ứng dụng công nghệ thông tin và truyền thông trong học và tự học: HS tra cứu bài giảng, ví dụ và bài tập tương tác trên trang NeoEdu để tự ôn tập ngoài giờ.
  • NLe: Hợp tác trong môi trường số: HS cùng nhóm chia sẻ bảng kết quả qua phiếu học tập hoặc bảng nhóm dùng chung và góp ý cho nhau.

3. Phẩm chất

  • Chăm chỉ: HS hoàn thành đầy đủ phiếu học tập và các bài tập, kiểm tra lại từng khóa ngoài với bảng cha trước khi nộp.
  • Trách nhiệm: HS nhận thức được việc chọn mã và quyền sửa dữ liệu người đọc ảnh hưởng đến độ chính xác của thông tin thư viện.
  • Trung thực: HS trình bày đúng kết quả kiểm tra của bản thân, không sao chép đáp án của bạn khi làm bài tập đánh giá.
  • Nhân ái: HS tôn trọng quyền riêng tư của người đọc khi thảo luận tình huống, chỉ dùng tên giả định trong ví dụ.

II. Thiết bị dạy học và học liệu

1. Giáo viên

  • Máy tính, máy chiếu hoặc bảng thông minh để trình chiếu mô hình DocGia, Sach, Muon và dữ liệu mẫu.
  • Học liệu số NeoEdu: trang bài học có bài giảng, ví dụ và bài tập tương tác tại neoedu.vn/learn/11/informatics/bai-13-co-so-du-lieu-quan-he, dùng để trình chiếu ví dụ và cho HS tự kiểm tra.
  • Bảng phụ hoặc khổ giấy A0 để ghi sơ đồ bảng và kết quả nhóm.
  • Phiếu học tập số 1 (in cho mỗi nhóm), đáp án gợi ý và thang chấm cho bài tập 8, 9.
  • Bảng 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.

2. Học sinh

  • Vở ghi, bút, thước kẻ.
  • Thiết bị có kết nối Internet (máy tính bảng hoặc điện thoại) để truy cập học liệu số NeoEdu, nếu nhà trường cho phép.
  • Bảng nhóm nhỏ hoặc giấy nháp để vẽ sơ đồ các bảng và đường nối khóa ngoài.

III. Tiến trình dạy học

Hoạt động 1: Mở đầu · 5 phút

Tình huống quản lí mượn sách ở thư viện

a) Mục tiêu

Giúp HS nhận ra dữ liệu cần được tổ chức thành bảng, và tên người có thể trùng nên cần mã riêng để nhận diện.

b) Nội dung

GV đưa ra tình huống: thư viện trường ghi sổ mượn sách bằng tên người đọc và tên sách. HS trả lời câu hỏi: Nếu hai bạn cùng tên An cùng mượn sách thì làm sao biết lượt mượn nào thuộc bạn nào? Nếu sửa tên một bạn thì phải tìm và sửa ở những dòng nào?

c) Sản phẩm

HS nêu được ít nhất hai ý: tên có thể trùng nên không đủ để phân biệt người đọc, cần một mã riêng cho mỗi người; nếu tên lưu ở nhiều dòng thì khi đổi tên phải sửa nhiều nơi, dễ sai sót. Từ đó GV dẫn vào ý tưởng tách thông tin thành các bảng có mã.

d) Tổ chức thực hiện

  1. Giáo viên

    Bước 1: Chuyển giao nhiệm vụ

    GV trình chiếu sổ mượn sách mẫu (tên, tên sách, ngày mượn) và đặt hai câu hỏi trong phần nội dung.

    Học sinh

    HS quan sát sổ mẫu, suy nghĩ cá nhân trong khoảng 1 phút.

  2. Giáo viên

    Bước 2: Thực hiện nhiệm vụ

    GV mời HS chia sẻ nhanh với bạn ngồi cạnh.

    Học sinh

    HS thảo luận cặp đôi, ghi ra nháp các phương án phân biệt người đọc.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời 2 đến 3 cặp trình bày, ghi ý chính lên bảng.

    Học sinh

    Dự kiến HS trả lời: Tên có thể trùng nên cần một mã riêng; nếu đổi tên thì phải sửa ở rất nhiều dòng nên dễ sót.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV nhận xét, chốt rằng cần tổ chức dữ liệu thành các bảng, mỗi người đọc có một mã duy nhất, và sẽ tìm hiểu cách mô hình quan hệ thực hiện điều đó.

    Học sinh

    HS ghi tên bài học Cơ sở dữ liệu quan hệ vào vở.

Hoạt động 2.1: Hình thành kiến thức mới · 20 phút

Bảng, bản ghi, thuộc tính và khóa chính

a) Mục tiêu

Nêu được cách mô hình quan hệ tổ chức dữ liệu thành bảng và giải thích được khóa chính xác định duy nhất bản ghi.

b) Nội dung

GV trình chiếu bảng DocGia(MaDG, Ten) và Sach(MaSach, Tua) cùng dữ liệu mẫu. HS làm việc theo nhóm 4 người theo kĩ thuật mảnh ghép: mỗi cặp nhận một bảng, xác định bản ghi (một hàng là gì), thuộc tính (cột là gì), chọn khóa chính. Câu hỏi GV đặt ra: Một hàng trong DocGia đại diện cho cái gì? Vì sao không chọn Ten làm khóa chính? Khóa chính có được phép rỗng không? Kết quả được ghi vào Phiếu học tập số 1, phần A. Có thể dùng học liệu NeoEdu để xem ví dụ về bảng và khóa chính trước khi làm.

c) Sản phẩm

Bảng DocGia: bản ghi là một người đọc; thuộc tính MaDG và Ten; khóa chính là MaDG vì mỗi giá trị xác định duy nhất một người và không được rỗng; Ten không chọn làm khóa chính vì có thể trùng nhau (hai người cùng tên An).
Bảng Sach: bản ghi là một đầu sách trong thư viện; thuộc tính MaSach và Tua; khóa chính là MaSach.
Kết luận HS rút ra: Khóa chính phải có tính duy nhất và không rỗng, mỗi bảng có đúng một khóa chính (có thể gồm một hoặc nhiều thuộc tính).

d) Tổ chức thực hiện

  1. Giáo viên

    Bước 1: Chuyển giao nhiệm vụ

    GV chia lớp thành nhóm 4, phát Phiếu học tập số 1 và giao nhiệm vụ phần A: mỗi cặp trong nhóm phân tích một bảng (DocGia hoặc Sach).

    Học sinh

    HS nhận phiếu, đọc dữ liệu mẫu và nhiệm vụ.

  2. Giáo viên

    Bước 2: Thực hiện nhiệm vụ

    GV đi quanh lớp, gợi ý HS kiểm tra xem giá trị nào có thể lặp lại.

    Học sinh

    Các cặp thảo luận, xác định bản ghi, thuộc tính và chọn khóa chính, ghi lý do vào phiếu.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời một cặp về DocGia và một cặp về Sach trình bày, các cặp khác góp ý.

    Học sinh

    Dự kiến HS trả lời: Bản ghi của DocGia là một người đọc; chọn MaDG vì duy nhất; không chọn Ten vì có thể trùng tên An.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: bảng gồm hàng là bản ghi, cột là thuộc tính có kiểu và ràng buộc; khóa chính xác định duy nhất bản ghi và không được rỗng; tên người không luôn duy nhất nên dùng mã phù hợp.

    Học sinh

    HS ghi kết luận vào vở, đối chiếu với bảng phụ.

Hoạt động 2.2: Hình thành kiến thức mới · 25 phút

Khóa ngoài và quan hệ một–nhiều

a) Mục tiêu

Giải thích được khóa ngoài tham chiếu khóa chính của bảng khác, nêu được quan hệ một–nhiều và liên kết bảng theo giá trị khóa.

b) Nội dung

GV trình chiếu bảng Muon(MaMuon, MaDG, MaSach, SoNgay) với dữ liệu mẫu. Nhiệm vụ: chỉ ra khóa chính của Muon, các khóa ngoài và bảng cha tương ứng; xác định quan hệ một–nhiều giữa DocGia và Muon, giữa Sach và Muon; kiểm tra xem mỗi giá trị khóa ngoài có tồn tại ở bảng cha không. Câu hỏi GV đặt ra: Vì sao MaDG trong Muon không phải là khóa chính? Một người đọc có thể có bao nhiêu lượt mượn? Nếu xóa dòng MaDG = 1 ở DocGia thì điều gì xảy ra với các lượt mượn 101 và 103?

c) Sản phẩm

Muon.MaMuon là khóa chính; Muon.MaDG là khóa ngoài tham chiếu DocGia.MaDG; Muon.MaSach là khóa ngoài tham chiếu Sach.MaSach.
Quan hệ một–nhiều: một DocGia có nhiều Muon (An có 2 lượt là 101 và 103; Binh có 1 lượt là 102); một Sach có nhiều Muon (sách 12 được mượn ở lượt 102 và 103).
Kiểm tra: các giá trị khóa ngoài (1, 2, 11, 12) đều tồn tại ở bảng cha.
Kết luận HS rút ra: khóa ngoài giữ liên hệ giữa các bảng; liên kết dựa trên giá trị khóa, không phụ thuộc vị trí hàng; khóa ngoài không được trỏ đến giá trị không tồn tại để tránh bản ghi mồ côi.

d) Tổ chức thực hiện

  1. Giáo viên

    Bước 1: Chuyển giao nhiệm vụ

    GV phát phần B của Phiếu học tập số 1, nêu nhiệm vụ và yêu cầu HS vẽ đường nối khóa ngoài với bảng cha trên bảng nhóm.

    Học sinh

    HS đọc bảng Muon, nhận nhiệm vụ và chuẩn bị bảng nhóm.

  2. Giáo viên

    Bước 2: Thực hiện nhiệm vụ

    GV theo dõi các nhóm, hướng dẫn kiểm tra giá trị khóa ngoài theo từng dòng.

    Học sinh

    Các nhóm lần lượt điền khóa chính, khóa ngoài, quan hệ một–nhiều và kiểm tra giá trị tồn tại ở bảng cha.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời đại diện hai nhóm trình bày; yêu cầu nhóm khác nhận xét về phần trả lời câu hỏi xóa bản ghi.

    Học sinh

    Dự kiến HS trả lời: Muon.MaMuon là khóa chính; MaDG và MaSach là khóa ngoài; An có 2 lượt (101 và 103); nếu xóa DocGia có MaDG = 1 khi còn lượt mượn thì sẽ tạo bản ghi mồ côi, nên hệ thống thường ngăn việc xóa này.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: khóa ngoài phải trỏ đến giá trị hợp lệ ở bảng cha; quan hệ một–nhiều được biểu diễn bằng khóa ngoài ở bảng phía nhiều; liên kết theo mã chứ không theo vị trí hàng. GV trình chiếu nhanh ví dụ trên học liệu NeoEdu nếu còn thời gian.

    Học sinh

    HS ghi sơ đồ quan hệ DocGia (một) đến Muon (nhiều) và Sach (một) đến Muon (nhiều) vào vở.

Hoạt động 3: Luyện tập · 25 phút

Luyện tập xác định khóa và quan hệ trên dữ liệu mẫu

a) Mục tiêu

Vận dụng được quy trình xác định khóa chính, khóa ngoài và quan hệ một–nhiều; nhận biết các lỗi thường gặp về trùng khóa và liên kết sai.

b) Nội dung

HS làm bài tập 2, 3, 4, 5, 7 (trắc nghiệm và đúng sai) và bài tập 8, 9 (tự luận) dưới đây. Mỗi bài dùng bản mẫu riêng, không kế thừa kết quả của bài khác.
Bài 2: Tên An có nên mặc nhiên làm khóa chính mọi thư viện? A. Không vì có thể trùng tên; B. Có vì tên luôn duy nhất; C. Có chỉ vì tên đã bỏ dấu; D. Có chỉ vì đã sắp tên theo chữ cái.
Bài 3: An liên quan bao nhiêu hàng trong Muon?
Bài 4: Khóa ngoài cần trỏ giá trị hợp lệ theo ràng buộc. Đúng hay sai?
Bài 5: Quan hệ dựa vào hai bảng có hàng thứ nhất cùng vị trí. Đúng hay sai?
Bài 7: Thêm lượt có MaMuon = 101 lần nữa thì có vấn đề gì? A. Trùng khóa chính; B. Chỉ tăng tổng SoNgay, không vấn đề; C. Tự sinh mã khác dù không quy định; D. Tự ghi đè hợp lệ trong mọi cấu hình.
Bài 8: Chỉ ra khóa chính, khóa ngoài và quan hệ một–nhiều trong mẫu DocGia, Sach, Muon và nêu một ví dụ An có hai lượt.
Bài 9: Nếu người đọc đổi tên, vì sao không cần sửa MaDG trong mọi lượt mượn?
HS có thể luyện thêm các bài tương tác trên trang NeoEdu.

c) Sản phẩm

Đáp án bài 2: A (có thể trùng tên, cần tiêu chí duy nhất thật).
Bài 3: 2 hàng (101 và 103).
Bài 4: Đúng (tránh bản ghi mồ côi).
Bài 5: Sai (liên kết bằng giá trị khóa, không bằng vị trí hàng).
Bài 7: A (trùng khóa chính, vì MaMuon = 101 đã tồn tại).
Bài 8 (thang chấm gợi ý): ba khóa chính đúng, mỗi khóa 0,3 điểm; hai khóa ngoài đúng đích (Muon.MaDG tham chiếu DocGia, Muon.MaSach tham chiếu Sach), mỗi khóa 0,3 điểm; hai quan hệ một–nhiều, mỗi quan hệ 0,25 điểm; ví dụ An có hai lượt, 0,15 điểm. Chấp nhận phương án tương đương đúng và có lí giải.
Bài 9 (thang chấm gợi ý): nêu được mã và tên độc lập nhau nên chỉ cần sửa Ten ở DocGia, các lượt vẫn liên kết qua MaDG, 0,6 điểm; nêu được cần đúng quyền và kiểm tra đúng người trước khi sửa, 0,4 điểm.

d) Tổ chức thực hiện

  1. Giáo viên

    Bước 1: Chuyển giao nhiệm vụ

    GV chiếu danh sách bài tập, nêu yêu cầu làm cá nhân trước rồi đối chiếu trong nhóm; nhắc HS làm bài 8 và 9 bằng lời lẽ của mình.

    Học sinh

    HS đọc đề, làm bài cá nhân trong khoảng 10 phút.

  2. Giáo viên

    Bước 2: Thực hiện nhiệm vụ

    GV quan sát, hỗ trợ HS gặp khó khăn ở bài 7 và bài 8; khuyến khích HS dùng bài tương tác trên NeoEdu để kiểm tra.

    Học sinh

    HS đối chiếu đáp án với bạn trong nhóm, giải thích lý do chọn đáp án và hoàn thiện bài tự luận.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời 2 HS trình bày bài 8 và bài 9, yêu cầu cả lớp nhận xét theo thang chấm.

    Học sinh

    Dự kiến HS trả lời bài 8: khóa chính là MaDG, MaSach, MaMuon; khóa ngoài là MaDG và MaSach; quan hệ một–nhiều DocGia–Muon và Sach–Muon; ví dụ An có hai lượt 101 và 103. Bài 9: MaDG độc lập với tên nên đổi tên không ảnh hưởng liên kết.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt lại các lỗi thường gặp: nhầm tên với mã, thêm trùng khóa chính, khóa ngoài trỏ giá trị không tồn tại; nhấn mạnh liên kết theo giá trị khóa.

    Học sinh

    HS sửa lại các câu làm sai và ghi chú vào vở.

Hoạt động 4: Vận dụng · 15 phút

Thiết kế bảng quản lí mượn đồ dùng trong lớp

a) Mục tiêu

Vận dụng quy trình xác định bản ghi, chọn mã duy nhất, ghép khóa ngoài và kiểm tra trường hợp trùng hoặc không tồn tại vào một tình huống thực tế.

b) Nội dung

Nhóm HS đề xuất mô hình hai bảng để quản lí việc mượn đồ dùng học tập trong lớp (ví dụ: bảng HocSinh và bảng DoDung, bảng Muon ghi lượt mượn). Mỗi nhóm cần: nêu bản ghi của từng bảng; chọn khóa chính và giải thích vì sao không chọn tên làm khóa; xác định khóa ngoài và bảng cha; nêu cách kiểm tra khi hai bạn trùng tên hoặc khi mã đồ dùng không tồn tại. Dữ liệu dùng là dữ liệu giả định.

c) Sản phẩm

Sản phẩm nhóm là một sơ đồ gồm ba bảng, ví dụ: HocSinh(MaHS, Ten), DoDung(MaDD, TenDD), Muon(MaMuon, MaHS, MaDD, SoNgay); trong đó MaHS và MaDD là khóa ngoài, MaMuon là khóa chính; có ít nhất một ví dụ về hai bạn trùng tên được phân biệt bằng mã và một quy tắc kiểm tra khi MaDD không tồn tại trong DoDung.

d) Tổ chức thực hiện

  1. Giáo viên

    Bước 1: Chuyển giao nhiệm vụ

    GV nêu tình huống và yêu cầu nhóm hoàn thành sơ đồ trên bảng nhóm trong 10 phút; nhắc tránh dùng dữ liệu thật của học sinh.

    Học sinh

    HS nhận nhiệm vụ, thống nhất vai trò trong nhóm: người vẽ sơ đồ, người kiểm tra khóa, người trình bày.

  2. Giáo viên

    Bước 2: Thực hiện nhiệm vụ

    GV đi quanh lớp, gợi ý nhóm tự kiểm tra bằng câu hỏi: Nếu mã đồ dùng không có trong bảng DoDung thì sao?

    Học sinh

    Nhóm vẽ sơ đồ, đặt khóa và đường nối khóa ngoài, ghi quy tắc kiểm tra.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời 2 nhóm trình bày, các nhóm khác đặt câu hỏi phản biện về khóa đã chọn.

    Học sinh

    Dự kiến HS trả lời: chọn MaHS làm khóa vì tên có thể trùng; khi MaDD không tồn tại thì không ghi lượt mượn đó vì sẽ tạo bản ghi mồ côi.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV nhận xét, chốt lại kiến thức trọng tâm: bản ghi, khóa chính, khóa ngoài, quan hệ một–nhiều và kiểm tra điều kiện áp dụng; khuyến khích HS hoàn thiện sơ đồ ở nhà.

    Học sinh

    HS ghi kết luận vào vở và chụp sơ đồ nhóm (nếu được phép) để tham khảo.

Phiếu học tập

Phiếu học tập số 1

Phần A. Bảng DocGia và Sach

  • Bảng DocGia(MaDG, Ten) với dữ liệu (1, An), (2, Binh).
  • Bảng Sach(MaSach, Tua) với dữ liệu (11, Vuon cay), (12, Bau troi).
  • Hàng của mỗi bảng đại diện cho cái gì?
  • Chọn khóa chính cho mỗi bảng và giải thích vì sao không chọn tên hoặc tựa sách làm khóa chính.
  • Khóa chính có được để trống không? Vì sao?

Phần B. Bảng Muon

  • Bảng Muon(MaMuon, MaDG, MaSach, SoNgay) với dữ liệu (101, 1, 11, 7), (102, 2, 12, 5), (103, 1, 12, 3).
  • Khóa chính của Muon là gì?
  • Liệt kê các khóa ngoài trong Muon và bảng cha tương ứng.
  • Một DocGia có thể có nhiều lượt mượn không? Nêu ví dụ.
  • Kiểm tra từng giá trị khóa ngoài: có tồn tại ở bảng cha không?
  • Vẽ đường nối khóa ngoài với bảng cha và ghi quan hệ một–nhiều.

Ghi chú: Tất cả tên và giao dịch là giả định.

Hướng dẫn về nhà

  • Hoàn thiện sơ đồ ba bảng quản lí mượn đồ dùng trong lớp (nếu nhóm chưa xong) và ghi rõ khóa chính, khóa ngoài, quan hệ một–nhiều.
  • Làm lại bài tập 8 và 9 trong vở, sau đó đối chiếu với đáp án gợi ý; ghi lại các câu còn sai và lí do.
  • Truy cập trang bài học NeoEdu (neoedu.vn/learn/11/informatics/bai-13-co-so-du-lieu-quan-he) để xem lại ví dụ và làm các bài tập tương tác; ghi chú một điều em chưa hiểu để nêu trên lớp buổi sau.

Giáo án do NeoEdu soạn với sự hỗ trợ của AI, dựa trên nội dung bài học trên Học liệu. Thầy cô nên đọc lại và điều chỉnh cho phù hợp với học sinh của mình; bản Word để sửa trực tiếp.