Lý thuyết Tin học 11 Bài 22 (Kết nối tri thức): Thực hành cập nhật bảng dữ liệu có tham chiếu

Tóm tắt lý thuyết Tin học lớp 11 Bài 22: Thực hành cập nhật bảng dữ liệu có tham chiếu hay, chi tiết sách Kết nối tri thức sẽ giúp học sinh nắm vững kiến thức trọng tâm, ôn luyện để học tốt Tin học 11.

1 5,204 08/08/2026


Lý thuyết Tin học 11 Bài 22: Thực hành cập nhật bảng dữ liệu có tham chiếu

A. Kiến thức trọng tâm Tin học 11 Bài 22: Thực hành cập nhật bảng dữ liệu có tham chiếu

I. NHIỆM VỤ 1. CẬP NHẬT BẢNG BANNHAC

a) Thêm mới dữ liệu vào bảng bannhac

  • Chọn bảng bannhac, nháy chuột chọn thẻ Dữ liệu, ta thấy các trường idBannhac, tenBannhac, idNhacsi nhưng chưa có dữ liệu.

  • Thực hiện nhập dữ liệu.

  • Trường idNhacsi có kiểu INT, AUTO_INCREMENT nên không cần nhập dữ liệu cho trường này. Nháy đúp chuột vào ô ở trường tenBannhac để nhập tên bản nhạc.

  • Trường idNhacsi là trường khóa ngoài, đã được khia báo tham chiếu đến trường idNhacsi của bảng nhacsi, vì vậy để đảm bảo tính nhất quán, giá trị hợp lệ chỉ có thể lấy từ các giá trị của idNhacsi có trong bảng nhacsi. Nháy đúp chuột vào ô nhập trường idNhacsi và chọn tên nhạc sĩ trong hộp danh sách.

b) Sửa chữa, cập nhật dữ liệu trong bảng bannhac

Thao tác sửa chữa dữ liệu trong bảng bannhac nếu phát hiện có sai sót, chỉ cần nháy đúp chuột vào ô dữ liệu muốn sửa.

c) Xóa dữ liệu trong bảng bannhac

Thực hiện tương tự các bước ở Bài 21 để xóa các dòng dữ liệu trong bảng bannhac.

d) Xóa dữ liệu trong bảng nhacsi

Bảng bannhac đã có dữ liệu với trường idNhacsi tham chiếu đến trường idNhacsi của bảng nhacsi. Do vậy ta không thể tùy tiện xóa các dòng của bảng nhacsi. MySQL sẽ kiểm tra và ngăn chặn việc xóa các dòng trong bảng nhacsi mà giá trị trường idNhacsi đã có trong trường idNhacsi của bảng bannhac.

e) Truy xuất dữ liệu trong bảng bannhac

Việc truy xuất dữ liệu trong bảng bannhac là hoàn toàn tương tự như truy xuất dữ liệu trong bảng nhacsi.

II. NHIỆM VỤ 2

Cách tương tác với giao diện Quản lí danh sách các bản nhạc:

- Để nhập dữ liệu bản nhạc mới, người dùng phải nhập tên bản nhạc, chọn nhạc sĩ từ hộp danh sách phía dưới sau đó chọn Nhập.

- Để tìm một bản nhạc có thể nhập vài từ của tên bản nhạc, cũng có thể chọn nhạc sĩ nếu biết, sau đó nháy chuột chọn Tìm.

- Danh sách các bản nhạc đã có trong CSDL được thể hiện ở bảng phía dưới thành nhiều trang, mỗi trang 10 dòng. Có thể nhảy chuột vào hộp danh sách trang đề chọn trang.

- Muốn sửa một bản nhạc nào đó, nháy chuột vào phím radio trên dòng đó, thông tin của bản nhạc sẽ được hiển thị ở phần phía trên của giao diện để người dùng sửa chữa, thay đổi,... Nháy chuột chọn Nhập để lưu lại kết quả thay đổi.

- Muốn xoá một hay nhiều bản nhạc nào đó trong danh sách đã có: nháy chuột vào các checkbox ở đầu các dòng tương ứng và chọn Xoá.

B. Bài tập Tin học 11 Bài 22: Thực hành cập nhật bảng dữ liệu có tham chiếu

Câu 1: Khi cập nhật một bảng có khoá ngoài, dữ liệu của trường khoá ngoài phải là?

A. Biểu thức logic một bảng khác

B. Biểu thức kí tự liên kết với một ô trong bảng

C. Dữ liệu tham chiếu được đến một trường khoá chính của một bảng tham chiếu

D. Cả ba đáp án trên đều đúng

Câu 2: HeidiSQL hỗ trợ kiểm soát việc cập nhật dữ liệu của trường khoá ngoài bằng cách?

A. Đảm bảo rằng giá trị của trường khoá chính phải là giá trị tham chiếu đến một trường khoá chính của bảng tham chiếu

B. Đảm bảo rằng giá trị của trường khoá ngoài phải là giá trị tham chiếu đến một bảng khác

C. Đảm bảo rằng giá trị của trường khoá ngoài phải là giá trị tham chiếu đến một trường khoá chính của bảng tham chiếu

D. Cả ba đáp án trên đều sai

Câu 3: Khi người dùng cập nhật dữ liệu trong bảng chứa khoá ngoài, HeidiSQL sẽ?

A. Kiểm tra giá trị của các trường trong bảng để đảm bảo rằng nó phải là giá trị tham chiếu đến một trường khoá chính của bảng tham chiếu

B. Kiểm tra giá trị của trường khoá ngoài để đảm bảo rằng nó phải là giá trị tham chiếu đến một trường khoá chính của bảng tham chiếu

C. Kiểm tra các giá trị trong bảng

D. Cả ba đáp án trên đều đúng

Câu 4: Nếu giá trị của trường khoá ngoài không hợp lệ thì?

A. HeidiSQL sẽ thông báo lỗi

B. Không cho phép bạn thực hiện thao tác cập nhật

C. Cả hai đáp án trên đều đúng

D. Cả hai đáp án trên đều sai

Câu 5: Việc HeidiSQL hỗ trợ kiểm soát việc cập nhật dữ liệu của trường khoá ngoài giúp?

A. Đảm bảo tính toàn vẹn dữ liệu trong các bảng có khoá ngoài

B. Tránh việc cập nhật dữ liệu không đúng hoặc gây ra sự cố

C. Cả hai đáp án trên đều đúng

D. Cả hai đáp án trên đều sai

Câu 6: Để truy vấn dữ liệu trong sql ta sử dụng?

A. Mệnh đề ORDER BY

B. Cú pháp câu lệnh SELECT

C. Dùng toán tử BETWEEN…AND

D. Đáp án khác

Câu 7: Để truy xuất dữ liệu từ bảng "banthuam" với điều kiện cụ thể trên trường "idbannhac" ta dùng câu lệnh?

A. SELECT * FROM banthuam;

B. SELECT * FROM banthuam ORDER BY idbannhac ASC;

C. SELECT idbannhac, idcasi FROM banthuam;

D. SELECT * FROM banthuam WHERE idbannhac = 1; -- Giả sử giá trị idbannhac cần tìm là 1

Câu 8: Để truy xuất tất cả dữ liệu từ bảng "banthuam" ta dùng câu lệnh?

A. SELECT * FROM banthuam;

B. SELECT * FROM banthuam ORDER BY idbannhac ASC;

C. SELECT idbannhac, idcasi FROM banthuam;

D. SELECT * FROM banthuam WHERE idbannhac = 1; -- Giả sử giá trị idbannhac cần tìm là 1

Câu 9: Để truy xuất dữ liệu từ bảng "banthuam" với điều kiện kết hợp giữa nhiều trường ta dùng câu lệnh?

A. SELECT * FROM banthuam WHERE idcasi = 2 -- Giả sử giá trị idcasi cần tìm là 2 AND banthuam >= 100; -- Giả sử giá trị banthuam cần tìm là lớn hơn hoặc bằng 100

B. SELECT * FROM banthuam ORDER BY idbannhac ASC;

C. SELECT idbannhac, idcasi FROM banthuam;

D. SELECT * FROM banthuam WHERE idbannhac = 1; -- Giả sử giá trị idbannhac cần tìm là 1

Câu 10: Để truy xuất dữ liệu từ bảng "banthuam" sắp xếp theo một trường cụ thể ta dùng câu lệnh?

A. SELECT * FROM banthuam;

B. SELECT * FROM banthuam ORDER BY idbannhac ASC;

C. SELECT * FROM banthuam ORDER BY idbannhac ASC; -- Giả sử muốn sắp xếp theo trường idbannhac tăng dần

D. SELECT * FROM banthuam WHERE idbannhac = 1; -- Giả sử giá trị idbannhac cần tìm là 1

Trắc nghiệm Tin học 11 Bài 22: Thực hành cập nhật bảng dữ liệu có tham chiếu

Câu 1: Khi nhập dữ liệu vào bảng bannhac , tại sao không cần nhập giá trị cho trường idBannhac ?

A. Vì trường idBannhac là trường khóa ngoại.

B. Vì trường idBannhac có kiểu dữ liệu AUTO_INCREMENT .

C. Vì trường idBannhac là trường không quan trọng.

D. Vì bảng bannhac không yêu cầu có trường idBannhac .

Đáp án:B

Giải thích:Trường idBannhac có kiểu dữ liệu AUTO_INCREMENT , nên nó sẽ tự động tăng và không cần nhập thủ công.

Câu 2: Trường idNhacsi trong bảng bannhac được gọi là gì?

A. Trường khóa chính.

B. Trường khóa ngoại.

C. Trường bình thường.

D. Trường không có tính năng gì đặc biệt.

Đáp án: B

Giải thích:Trường idNhacsi là khóa ngoại, tham chiếu đến trường idNhacsi trong bảng nhacsi , đảm bảo tính toàn vẹn dữ liệu.

Câu 3: Khi nào người dùng không thể xóa dữ liệu trong bảng nhacsi ?

A. Khi trường idNhacsi còn được tham chiếu bởi bảng bannhac .

B. Khi trường idNhacsi chứa giá trị NULL.

C. Khi bảng bannhac không có dữ liệu.

D. Khi bảng nhacsi đã đầy.

Đáp án:A

Giải thích:MySQL sẽ ngăn chặn việc xóa dòng dữ liệu trong bảng nhacsi nếu giá trị của idNhacsi đang được tham chiếu ở bảng bannhac .

Câu 4: Để sửa dữ liệu trong bảng bannhac , người dùng cần làm gì?

A. Xóa dữ liệu cũ và nhập lại dữ liệu mới.

B. Nháy đúp chuột vào ô dữ liệu cần sửa và nhập dữ liệu mới.

C. Sử dụng lệnh SQL để cập nhật dữ liệu.

D. Xóa bảng và tạo lại.

Đáp án: B

Giải thích:Việc sửa dữ liệu trong bảng bannhac rất đơn giản, chỉ cần nháy đúp chuột vào ô dữ liệu muốn sửa và thay đổi thông tin

Câu 5: Tại sao MySQL ngăn chặn việc xóa dòng dữ liệu của nhạc sĩ Văn Cao trong bảng nhacsi ?

A. Vì nhạc sĩ Văn Cao có nhiều bản nhạc nổi tiếng.

B. Vì idNhacsi của Văn Cao đang được tham chiếu trong bảng bannhac .

C. Vì bảng nhacsi không cho phép xóa dữ liệu.

D. Vì không có chức năng xóa trong MySQL

Đáp án: B

Giải thích:idNhacsi của Văn Cao đang được tham chiếu trong bảng bannhac , nên việc xóa sẽ bị ngăn chặn để đảm bảo tính toàn vẹn dữ liệu.

Câu 6: Để thực hiện việc tìm kiếm bản nhạc của nhạc sĩ Văn Cao trong bảng bannhac , cần làm gì?

A. Lọc theo trường idBannhac .

B. Truy xuất theo thứ tự giảm dần của tên bản nhạc.

C. Lọc dữ liệu theo trường idNhacsi tương ứng với nhạc sĩ Văn Cao.

D. Không thể tìm kiếm.

Đáp án: C

Giải thích:Để tìm bản nhạc của Văn Cao, người dùng cần lọc dữ liệu theo trường idNhacsi của nhạc sĩ này trong bảng bannhac .

Câu 7: Khi nào có thể xóa một dòng dữ liệu trong bảng bannhac ?

A. Khi dòng đó không còn tham chiếu đến bất kỳ bảng nào khác.

B. Khi trường idBannhac có giá trị NULL.

C. Khi tất cả các bản nhạc đã được lưu trữ.

D. Khi người dùng muốn xóa mà không có điều kiện gì đặc biệt.

Đáp án: A

Giải thích:Xóa dòng dữ liệu trong bảng bannhac chỉ được phép nếu dòng đó không có bất kỳ ràng buộc tham chiếu đến các bảng khác.

Câu 8: Nếu phát hiện lỗi dữ liệu trong trường idNhacsi của dòng số 2 trong bảng bannhac , cách sửa lỗi là gì?

A. Xóa dòng số 2 và nhập lại dữ liệu.

B. Nháy đúp chuột vào ô chứa dữ liệu sai và sửa lại giá trị.

C. Sử dụng câu lệnh SQL để cập nhật dữ liệu.

D. Xóa bảng bannhac và nhập lại dữ liệu từ đầu.

Đáp án: B

Giải thích:Để sửa lỗi, chỉ cần nháy đúp chuột vào ô dữ liệu chứa sai sót và thay đổi giá trị trực tiếp.

Câu 9: Khi thêm dữ liệu mới vào bảng bannhac , việc chọn nhạc sĩ được thực hiện như thế nào?

A. Nhập trực tiếp tên nhạc sĩ vào trường idNhacsi .

B. Chọn nhạc sĩ từ hộp danh sách liên kết với bảng nhacsi .

C. Tạo mới một nhạc sĩ trước khi nhập dữ liệu.

D. Không cần chọn nhạc sĩ, chỉ cần nhập tên bản nhạc

Đáp án: B

Giải thích:Khi thêm bản nhạc mới, người dùng chọn nhạc sĩ từ hộp danh sách đã được tham chiếu đến bảng nhacsi để đảm bảo tính nhất quán dữ liệu.

Câu 10: Chức năng nào của hệ quản trị CSDL giúp ngăn chặn việc xóa dữ liệu có tham chiếu đến bảng khác?

A. AUTO_INCREMENT.

B. Khóa chính (Primary Key).

C. Khóa ngoại (Foreign Key).

D. Chức năng tìm kiếm.

Đáp án: C

Giải thích:Khóa ngoại đảm bảo tính toàn vẹn dữ liệu, giúp ngăn chặn việc xóa dữ liệu trong bảng có ràng buộc tham chiếu đến bảng khác.

PHẦN II. Câu trắc nghiệm đúng sai. Thí sinh trả lời từ câu 1 đến câu 2. Trong mỗi ý a), b), c), d) ở mỗi câu, thí sinh chọn đúng hoặc sai

Câu 1: Điều nào sau đây là đúng khi thêm mới dữ liệu vào bảng bannhac?

a) Bạn có thể nhập bất kỳ giá trị nào vào trường idNhacsi.

b) Trường idBannhac tự động tăng giá trị khi nhập dữ liệu mới.

c) Bạn cần phải nhập thủ công tất cả các trường dữ liệu trong bảng.

d) Giá trị của trường idNhacsi phải chọn từ các giá trị có sẵn trong bảng nhacsi.

a) Sai. Trường idNhacsi là khóa ngoại, chỉ có thể lấy giá trị từ các giá trị hiện có trong bảng nhacsi.

b) Sai. Trường idBannhac là trường khóa chính và tự động tăng giá trị (AUTO_INCREMENT), nhưng thông tin này không được nhắc đến trong bài hướng dẫn.

c) Sai. Trường idBannhac tự động tăng và không cần nhập thủ công cho tất cả các trường.

d) Đúng. Trường idNhacsi là khóa ngoại và giá trị của nó phải chọn từ các giá trị trong bảng nhacsi để đảm bảo tính nhất quán dữ liệu.

Câu 2: Điều gì sẽ xảy ra khi cố gắng xóa nhạc sĩ trong bảng nhacsi mà nhạc sĩ đó đã được tham chiếu trong bảng bannhac?

a) Dữ liệu sẽ được xóa hoàn toàn từ cả bảng nhacsi và bannhac.

b) Hệ quản trị cơ sở dữ liệu sẽ ngăn chặn việc xóa và thông báo lỗi.

c) Bảng nhacsi sẽ tự động cập nhật lại thông tin để không còn lỗi tham chiếu.

d) Dữ liệu trong bảng bannhac sẽ tự động xóa để phù hợp với thao tác trong bảng nhacsi.

a) Sai. Dữ liệu không thể bị xóa từ cả hai bảng mà không có sự xử lý đặc biệt.

b) Đúng. Hệ quản trị cơ sở dữ liệu sẽ kiểm tra khóa ngoại và ngăn chặn việc xóa dữ liệu có liên quan đến bảng khác, cụ thể là idNhacsi đã được tham chiếu từ bảng bannhac.

c) Sai. Hệ quản trị cơ sở dữ liệu không tự động thay đổi dữ liệu để tránh lỗi tham chiếu.

d) Sai. Dữ liệu trong bảng bannhac sẽ không tự động xóa khi bạn xóa nhạc sĩ trong bảng nhacsi.

PHẦN III. Câu trả lời ngắn. Thí sinh trả lời từ câu 1 đến câu 3

Câu 1: Tại sao không cần nhập dữ liệu cho trường idBannhac khi thêm mới bản nhạc vào bảng bannhac ?

Đáp án:Vì trường idBannhac có thuộc tính AUTO_INCREMENT.

Giải thích: Trường idBannhac được khai báo với thuộc tính AUTO_INCREMENT, nghĩa là mỗi lần thêm một bản ghi mới, hệ thống tự động tạo giá trị tăng dần cho trường này. Điều này giúp mỗi bản nhạc có một mã số duy nhất mà người dùng không cần phải nhập tay, đảm bảo tính toàn vẹn và duy nhất của dữ liệu.

Câu 2: Tại sao không thể xóa nhạc sĩ Văn Cao trong bảng nhacsi nếu có dữ liệu tham chiếu đến ông trong bảng bannhac ?

Đáp án:Vì trường idNhacsi trong bảng bannhac là khóa ngoại tham chiếu đến bảng nhacsi .

Giải thích:Trường idNhacsi trong bảng bannhac là khóa ngoại, nghĩa là nó tham chiếu đến trường idNhacsi trong bảng nhacsi . Khi có dữ liệu trong bảng bannhac tham chiếu đến nhạc sĩ Văn Cao, hệ quản trị cơ sở dữ liệu sẽ ngăn chặn việc xóa nhạc sĩ này để tránh gây lỗi tham chiếu không hợp lệ trong bảng bannhac . Điều này giúp đảm bảo tính toàn vẹn của dữ liệu giữa các bảng liên quan.

Câu 3: Điều gì xảy ra nếu nhập sai tên nhạc sĩ trong bảng bannhac ?

Đáp án:Hệ quản trị cơ sở dữ liệu sẽ không báo lỗi, nhưng thông tin kết xuất sẽ sai.

Giải thích:Hệ quản trị cơ sở dữ liệu chỉ kiểm tra các lỗi logic dựa trên quy tắc như khóa ngoại. Nếu người dùng nhập sai tên nhạc sĩ, điều này không vi phạm quy tắc tham chiếu, nên hệ thống không báo lỗi. Tuy nhiên, sai sót này sẽ dẫn đến việc kết xuất thông tin không chính xác, ảnh hưởng đến kết quả truy vấn và báo cáo liên quan, do đó người nhập dữ liệu cần phải cẩn thận để tránh lỗi nội dung.

1 5,204 08/08/2026


Xem thêm các chương trình khác: