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

Thực hành tạo lập các bảng có khoá ngoài SGK trang 95 lớp 11 Tin học ứng dụng – NXB Kết Nối Tri Thức, mời các em tham khảo cùng Bumbii.

Chủ đề 6. Thực hành tạo và khai thác cơ sở dữ liệu. Bài 20. Thực hành tạo lập các bảng có khoá ngoài.

Nhiệm vụ. Tạo lập bảng bannhac với cấu trúc:

bannhac (idBannhac, tenBannhac, idNhacsi),

Các trường idBannhac, idNhacsi kiểu INT,

Trường tenBannhac kiểu VARCHAR (255).

Hướng dẫn:

1. KHAI BÁO BẢNG BANNHAC VỚI CÁC TRƯỜNG IDBANNHAC, TENBANNHAC

Chọn thẻ Tạo mới, chọn Bảng. Nhập tên: bannhac, chọn Thêm mới để thêm trường dữ liệu, một trường với tên mặc định Column1 sẽ xuất hiện phía dưới.

Khai báo bảng mới
Khai báo bảng mới

Nhập tên: idBannhac, chọn kiểu dữ liệu INT bỏ đánh dấu ô Allow NULL, nháy chuột vào ô No default để chọn giá trị mặc định là AUTO_INCREMENT.

Khai báo trường kiểu INT
Khai báo trường kiểu INT

Để khai báo thêm trường tiếp theo, nhấn Ctrl+Insert hoặc nháy nút phải chuột vào phần dưới dòng idBannhac và chọn Add column.

Nhập: tenBannhac, chọn kiểu VARCHAR, độ dài 255, giá trị mặc định là kí tự rỗng ”.

Khai báo trường kiểu VARCHAR
Khai báo trường kiểu VARCHAR

2. KHAI BÁO CÁC TRƯỜNG LÀ KHOÁ NGOÀI

Các trường là khoá ngoài của bảng là các trường tham chiếu đến một trường khoá chính (k) của một bảng khác vì vậy cần được khai báo giá trị mặc định phù hợp với giá trị tương ứng của k.

Ví dụ, bảng bannhac, trường idNhacsi tham chiếu đến trường idNhacsi (kiểu INT)của bảng nhacsi nên giá trị của trường này cũng là INT và giá trị mặc định là một số nguyên, chẳng hạn là 0.

Khai báo trường sẽ là khoá ngoài của bảng
Khai báo trường sẽ là khoá ngoài của bảng

3. KHAI BÁO CÁC TRƯỜNG KHOÁ

a) Khai báo khoá chính: idBannhac

Nháy nút phải chuột vào ô idBannhac, chọn Creat new index, chọn PRIMARY.

Bảng chọn để khai báo khoá chính
Bảng chọn để khai báo khoá chính

b) Khai báo khoá chống trùng lặp

Cặp (tenBannhac, idNhacsi) không được trùng lặp giá trị nên phải khai báo khoá cấm trùng lặp. Đánh dấu hai trường này, nháy nút phải chuột vào vùng đánh dấu và chọn Create new index, chọn UNIQUE.

Giao diện khai báo khoá cấm trùng lặp
Giao diện khai báo khoá cấm trùng lặp
Kết quả bảng bannhac

c) Khai báo các khoá ngoài

Để khai báo khoá ngoài idNhacsi, chọn thẻ Foreign Key.

Khai báo khoá ngoài
Khai báo khoá ngoài

Nháy chuột vào ô dưới dòng Columns và chọn trường khoá ngoài là idNhacsi rồi chọn OK.

Chọn trường là khoá ngoài
Chọn trường là khoá ngoài

Nháy chuột vào ô phía dưới Reference table để chọn bảng tham chiếu là nhacsi và chọn OK.

Chọn bảng tham chiếu
Chọn bảng tham chiếu

Tiếp theo chọn trường tham chiếu trong bảng nhacsi.

Chọn trường tham chiếu
Chọn trường tham chiếu

Cuối cùng nháy chuột chọn Lưu để kết thúc khai báo và khởi tạo bảng bannhac.

LUYỆN TẬP

Hãy tạo lập bảng banthuam.

Hướng dẫn:

Bảng này có khoá chính là idBanthuam, cặp (idBannhac, idCasi) không được trùng lặp giá trị, có khoá ngoài là idCasi.

Thao tác hoàn toàn tương tự như tạo lập bảng bannhac (idBannhac, tenBannhac, idNhacsi).

Thiết lập khoá chính: idBanthuam.

Cặp (idBannhac, idCasi) không được trùng lặp giá trị.

Thiết lập khoá ngoài: idCasi.

VẬN DỤNG

Hãy tạo lập bảng Quận/Huyện trong CSDL quản lí tên Quận/Huyện, Tỉnh/Thành phố.

Hướng dẫn:

– Bảng quận/huyện: huyen (idHuyen, tenHuyen, idTinh) có khoá chính là idHuyen, khoá ngoài là idTinh, cặp (tenHuyen, idTinh) không được trùng lặp giá trị.

– Khái báo tạo lập bảng huyện tương tự như tạo lập bảng bannhac (idBannhac, tenBannhac, idNhacsi).

Tạo bảng huyen (idHuyen, tenHuyen, idTinh):

Thiết lập khoá chính là idHuyen và cặp (tenHuyen, idTinh) không được trùng lặp giá trị.

Thiết lập khoá ngoài là idTinh.

Nhấn nút Lưu để kết thúc khai báo và khởi tạo bảng huyen.

Xem các bài giải khác tại Giải bài tập SGK lớp 11 định hướng tin học ứng dụng – NXB Kết nối tri thức với cuộc sống

Thông tin liên hệ & mạng xã hội:
Website: https://bumbii.com/
Facebook: https://www.facebook.com/bumbiiapp
Pinterest: https://www.pinterest.com/bumbiitech

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest

0 Bình luận
Phản hồi nội tuyến
Xem tất cả bình luận
0
Cùng chia sẻ bình luận của bạn nào!x