Cho CSDL học tập có các bảng sau: Hocsinh (họ tên, số CCCD, số thẻ học sinh, ngày sinh, địa chỉ), monhoc (tên, mã môn). Diem (số thẻ học sinh, mã môn, năm, học kì, loại điểm, điểm), trong đó

Cho CSDL học tập có các bảng sau: Hocsinh (họ tên, số CCCD, số thẻ học sinh, ngày sinh, địa chỉ), monhoc (tên, mã môn). Diem (số thẻ học sinh, mã môn, năm, học kì, loại điểm, điểm),  trong đó loại điểm chỉ các loại ĐĐG thường xuyên, ĐĐG giữa kì, ĐĐG cuối kì

Hãy xác định các khoá chính và các khoá ngoài của từng bảng, có thể lấy số CCCD làm khoá chính được không.

Trả lời

Trong CSDL học tập này, ta có thể xác định các khoá chính và các khoá ngoài của từng bảng như sau:

- Bảng Hocsinh:

Khoá chính: Số CCCD

Khoá ngoài: Không có

- Bảng Monhoc:

Khoá chính: Mã môn

Khoá ngoài: Không có

- Bảng Diem:

Khoá chính: Số thẻ học sinh, Mã môn, Năm, Học kì, Loại điểm

Khoá ngoài:

Số thẻ học sinh tham chiếu đến bảng Hocsinh.

Mã môn tham chiếu đến bảng Monhoc.

Số CCCD có thể được sử dụng làm khoá chính của bảng Hocsinh, nhưng không nên sử dụng nó làm khoá chính của bảng Diem, bởi vì một học sinh có thể có nhiều môn học và điểm khác nhau trong các môn học đó. Do đó, ta cần sử dụng một tập hợp các trường (số thẻ học sinh, mã môn, năm, học kì, loại điểm) để tạo thành khoá chính của bảng Diem.

Câu hỏi cùng chủ đề

Xem tất cả