Tin Học KHMT
Ôn tập Tin học THPT › Tin học 11 - Tin học ứng dụng › Bài 6
Tin học 11 - Tin học ứng dụng

Bài 6. Ràng buộc toàn vẹn và dữ liệu tham chiếu

Khi nhiều bảng nối với nhau qua khoá ngoài, một thao tác cập nhật bất cẩn có thể để lại dữ liệu mồ côi. Bài này bạn học cách để phần mềm tự canh giữ tính hợp lệ của dữ liệu qua các ràng buộc toàn vẹn.

Chủ đề C · Tổ chức, lưu trữ & tìm kiếm thông tin - đọc khoảng 12 phút · 23 câu luyện tập trong ứng dụng

Tương ứng sách giáo khoa
  • Kết nối tri thứcTin học 11 (Tin học ứng dụng) - Bài 22. Thực hành cập nhật bảng dữ liệu có tham chiếutr. 105
Xem bảng đối chiếu cả bộ →

Bắt đầu bằng một hình dung

Lớp 11A5 lập một sổ điểm danh câu lạc bộ bằng máy tính. Bạn Minh nhập danh sách thành viên vào một bảng, mỗi thành viên có một mã riêng. Bảng thứ hai ghi từng buổi sinh hoạt: buổi nào, thành viên nào có mặt, chỉ chép lại mã thành viên cho gọn.

Một hôm, Minh thấy bạn Hùng đã nghỉ hẳn câu lạc bộ nên xoá luôn Hùng khỏi bảng thành viên. Vài tuần sau, khi tổng kết chuyên cần, cả nhóm hoảng hồn: bảng điểm danh vẫn còn hàng chục dòng ghi mã của Hùng, nhưng tra sang bảng thành viên thì chẳng còn ai mang mã đó. Những dòng ấy trỏ tới một người không còn tồn tại.

Có bạn lại lỡ tay nhập hai thành viên trùng y hệt một mã. Đến lúc cộng điểm chuyên cần, máy không biết dòng điểm danh thuộc về ai trong hai người. Cả sổ điểm danh vừa lập đã rối tung chỉ vì vài thao tác tưởng như vô hại.

Nội dung bài học

  1. 1) Ràng buộc toàn vẹn là gì
  2. 2) Toàn vẹn tham chiếu
  3. 3) Khi xoá hoặc sửa bản ghi đang được tham chiếu
  4. 4) Vì sao ràng buộc giúp tránh dữ liệu rác

Tóm tắt lý thuyết cần nhớ

  • Ràng buộc toàn vẹn là quy tắc khai báo trong bảng để hệ QTCSDL tự kiểm tra mỗi khi thêm, sửa, xoá dữ liệu.
  • Toàn vẹn tham chiếu: mọi khoá ngoài ở bảng con phải trỏ tới một khoá chính có thật ở bảng cha, không được có bản ghi mồ côi.
  • Xoá hoặc sửa bản ghi cha đang được tham chiếu phải theo một cách xử lí: hạn chế, xoá lan truyền hoặc đặt khoá ngoài về rỗng.
  • Ràng buộc chặn sai sót ngay lúc nhập, giúp CSDL không tích tụ dữ liệu rác và báo cáo luôn đáng tin.

Thuật ngữ tiếng Anh trong bài

Tiếng AnhĐọc làNghĩa
DBMSđi-bi-em-éthệ quản trị cơ sở dữ liệu
Phần mềm giúp tạo, lưu và quản lí cơ sở dữ liệu - giống người thủ thư trông coi cả thư viện.
primary keyPRAI-mơ-ri kikhoá chính
Cột dùng để phân biệt mỗi hàng, không ai trùng ai - như số báo danh riêng của mỗi học sinh.
foreign keyPHO-rìn kikhoá ngoài
Cột dùng để nối bảng này với bảng kia - như số lớp trong bảng học sinh chỉ sang bảng danh sách lớp.
constraintcơn-STRÂY-ntràng buộc
Là điều kiện gài sẵn ở từng cột để hệ quản trị tự động từ chối dữ liệu sai ngay khi nhập.
referential integrityre-phơ-REN-sồ in-TE-gri-titoàn vẹn tham chiếu
Là yêu cầu mọi khoá ngoài ở bảng con phải trỏ tới một khoá chính có thật ở bảng cha.
cascadekes-KÂY-đơlan truyền (xoá/sửa dây chuyền)
Chọn kiểu xử lí cascade nghĩa là khi xoá hoặc sửa bản ghi cha thì mọi bản ghi con đang trỏ tới nó cũng bị xoá hoặc sửa theo.

Câu hỏi trắc nghiệm có đáp án

Mấy câu mẫu để bạn tự kiểm tra ngay. Trong ứng dụng, bài này có đủ 23 câu, chấm điểm tự động và giải thích từng câu sai.

Câu 1 · Nhận biết
Ràng buộc toàn vẹn trong một CSDL có nhiều bảng có vai trò chính là gì?
  1. Đặt ra quy tắc để phần mềm tự kiểm tra, giữ dữ liệu luôn hợp lệ khi thêm, sửa, xoá
  2. Làm cho bảng hiển thị đẹp và dễ đọc hơn nhờ tự căn chỉnh cột, kẻ khung và tô màu xen kẽ
  3. Tăng tốc độ mở tệp CSDL bằng cách nén bớt những bản ghi ít dùng để giảm dung lượng
  4. Tự động dịch dữ liệu trong bảng sang ngôn ngữ khác cho người dùng ở nhiều quốc gia
Đáp án: A - Ràng buộc toàn vẹn là các quy tắc để hệ QTCSDL tự kiểm tra tính hợp lệ của dữ liệu. Phương án về hiển thị đẹp chỉ nói hình thức, không liên quan tính hợp lệ. Phương án tăng tốc độ nói về tốc độ, không phải mục đích của ràng buộc. Phương án dịch dữ liệu là chức năng dịch thuật, không có trong CSDL.
Câu 2 · Nhận biết
Theo ràng buộc toàn vẹn tham chiếu, một giá trị khoá ngoài ở bảng con phải như thế nào?
  1. Phải là một số lớn hơn 0
  2. Phải khác với mọi khoá ngoài khác trong cùng bảng
  3. Phải khớp với một khoá chính đang tồn tại ở bảng cha
  4. Phải được nhập cuối cùng sau tất cả các trường khác
Đáp án: C - Toàn vẹn tham chiếu yêu cầu khoá ngoài trỏ tới một bản ghi có thật ở bảng cha, tức khớp với một khoá chính đang tồn tại. A đặt điều kiện về giá trị số không đúng bản chất. B nhầm với tính duy nhất của khoá chính; khoá ngoài hoàn toàn có thể lặp lại. D nói về thứ tự nhập, không liên quan.
Câu 3 · Thông hiểu
Bảng DIEMDANH (con) có khoá ngoài trỏ tới bảng THANHVIEN (cha). Nếu ràng buộc tham chiếu đang bật, thao tác nào sau đây sẽ bị phần mềm từ chối?
  1. Thêm một dòng điểm danh với mã thành viên đã có trong bảng THANHVIEN
  2. Thêm một dòng điểm danh với mã thành viên chưa hề có trong bảng THANHVIEN
  3. Thêm một thành viên mới hoàn toàn vào bảng THANHVIEN
  4. Sửa lại buổi sinh hoạt của một dòng điểm danh đã hợp lệ
Đáp án: B - Ràng buộc tham chiếu chặn khoá ngoài trỏ tới bản ghi không tồn tại, nên thêm dòng con với mã chưa có ở bảng cha sẽ bị từ chối. A hợp lệ vì mã đã có ở bảng cha. C chỉ thêm vào bảng cha, không vi phạm gì. D chỉ đổi trường buổi, không đụng tới khoá ngoài nên vẫn hợp lệ.
Câu Đúng/Sai (Phần II) · Thông hiểu
Cho biết mỗi phát biểu sau đúng hay sai:
  • a)Ràng buộc toàn vẹn được hệ QTCSDL tự kiểm tra mỗi khi có thao tác thêm, sửa hoặc xoá dữ liệu.Đúng
  • b)Đã bật ràng buộc thì người dùng vẫn phải tự dò lại từng dòng để bảo đảm dữ liệu hợp lệ.Sai
  • c)Ràng buộc khoá chính không cho phép hai bản ghi mang cùng một giá trị khoá chính.Đúng
  • d)Ràng buộc miền giá trị cho phép nhập điểm là 15 vào trường điểm giới hạn từ 0 đến 10.Sai
Vì sao:
  • (a) Đúng - đó chính là vai trò của ràng buộc, kiểm tra tự động khi cập nhật.
  • (b) Sai - phần mềm đã canh giữ nên không cần dò tay từng dòng.
  • (c) Đúng - khoá chính phải duy nhất.
  • (d) Sai - ràng buộc miền giá trị sẽ từ chối giá trị 15 vì vượt khoảng 0 đến 10.

Thử ngay: minh hoạ từng bước

Bấm từng bước để tự xem cơ chế hoạt động, hoặc bấm “Tự chạy” cho nó tiến mỗi giây một lần. Đổi được dữ liệu đầu vào - không cần đăng nhập.

Học trọn bài này trong ứng dụng

Bài giảng đầy đủ, 23 câu luyện tập chấm tự động, thi thử đúng cấu trúc đề tốt nghiệp (24 trắc nghiệm + 4 Đúng/Sai), bài thực hành máy tự chấm và gia sư AI giải thích chỗ sai.

Mở bài 6 trong ứng dụng

Phần học miễn phí, không cần tạo tài khoản.