Câu 18.1. Ở bảng nhacsi có thể chọn trường tenNhacsi là khóa chính được không? Tại sao?
Hướng dẫn trả lời:
Không được.
Giá trị của khoá chính phải khác nhau ở các bản ghi. Các nhạc sĩ có thể trùng tên nhau nhưng idNhacsi là phân biệt. Thêm nữa, việc tạo ra trường idNhacsi có mục đích hạn chế việc lượng lớn dữ liệu (tên nhạc sĩ) bị lặp lại bởi sự lặp lại của lượng dữ liệu ít hơn là idNhacsi.
Vì vậy idNhacsi là khoá ngoài của bảng bannhac phải tham chiếu đến khoá chính idNhacsi của bảng nhacsi.
Câu 18.2. Việc tổ chức lại các bảng dữ liệu từ một bảng duy nhất ban đầu nhằm mục đích gì? Hãy chọn những phương án trả lời đúng.
A. Chống lặp lại dữ liệu và đảm bảo tính nhất quán dữ liệu.
B. Hạn chế lặp lại lượng lớn dữ liệu, tiết kiệm không gian lưu trữ dữ liệu.
C. Tạo thuận lợi cho việc cập nhật dữ liệu và đảm bảo tính nhất quán dữ liệu.
D. Tạo thuận lợi cho việc bảo mật và an toàn dữ liệu.
Hướng dẫn trả lời:
B. Hạn chế lặp lại lượng lớn dữ liệu, tiết kiệm không gian lưu trữ dữ liệu.
C. Tạo thuận lợi cho việc cập nhật dữ liệu và đảm bảo tính nhất quán dữ liệu.
Câu 18.3. Khoá ngoài của bảng có vai trò gì? Hãy chọn những phương án trả lời đúng.
A. Hạn chế việc lặp lại lượng lớn dữ liệu.
B. Hỗ trợ cho khoá chính.
C. Chỉ ra tham chiếu đến khóa chính của bảng khác, nhờ đó có thể liên kết hai bảng lại với nhau.
D. Thể hiện mối liên hệ giữa hai bảng.
Hướng dẫn trả lời:
A. Hạn chế việc lặp lại lượng lớn dữ liệu.
C. Chỉ ra tham chiếu đến khóa chính của bảng khác, nhờ đó có thể liên kết hai bảng lại với nhau.
Câu 18.4. Khoá cấm trùng lặp có vai trò gì?
A. Hạn chế trùng lặp lượng lớn dữ liệu.
B. Hỗ trợ khoá ngoài.
C. Ngăn cản giá trị trùng lặp trong các trường chỉ định, hỗ trợ đảm bảo tính chính xác của dữ liệu nhập vào.
D. Có vai trò tương tự khoá ngoài.
Hướng dẫn trả lời:
C. Ngăn cản giá trị trùng lặp trong các trường chỉ định, hỗ trợ đảm bảo tính chính xác của dữ liệu nhập vào.
Câu 18.5. Công việc quản lý danh sách tất cả học sinh và những thông tin cá nhân cơ bản của học sinh trong một trường Trung học phổ thông là công việc quản lý những thông tin bao gồm: mã học sinh, số CCCD, họ và tên, giới tính, ngày sinh, dân tộc, địa chỉ, năm vào trường, năm ra trường. Trong đó địa chỉ là thông tin về xã/ phường nơi học sinh cư trú (tại huyện/quận nơi trường Trung học phổ thông này hoạt động).
Hãy phân tích bài toán và xây dựng mô hình CSDL với các bảng cần thiết, các khoá, các kiểu dữ liệu cho từng trường.
Hướng dẫn trả lời:
CSDL quản lý danh sách học sinh theo yêu cầu của bài có thể được tổ chức thành các bảng như sau:
dantoc (idDantoc, tenDantoc), khóa chính là idDantoc;
xa (idXa, tenXa), khoá chính là idXa;
hocsinh (idHs, cccd, hoten, gioitinh, ngaysinh, idDantoc, idXa).
Bảng hocsinh có khoá chính là idHs. Các khóa ngoài là idDantoc tham chiếu đến bảng dantoc, idXa tham chiếu đến bảng xa.
Các khoá chính có thể chọn kiểu dữ liệu nguyên không âm, tự động tăng; tenDantoc, tenXa, hoten kiểu xâu kí tự; ngaysinh kiểu date; gioitinh kiểu 1 kí tự, với quy ước 0 – nam, 1 – nữ.
Câu 18.6. Để quản lý danh sách học sinh và lớp học, cần quản lí thêm thông tin về lớp học của học sinh trong từng năm học. Hãy phân tích bài toán và xây dựng mô hình CSDL với các bảng cần thiết, các khoá, các kiểu dữ liệu cho từng trường.
Hướng dẫn trả lời:
CSDL quản lý danh sách học sinh theo yêu cầu của bài có thể tổ chức thành các bảng như sau:
dantoc (idDantoc, tenDantoc) khóa chính là idDantoc;
xa (idXa, tenXa) khoá chính là idXa;
lop (idLop, tenLop, namhoc) khóa chính là idLop, cặp (tenLop, namhoc) không được trùng lặp giá trị;
hocsinh (idHs, cccd, hoten, gioitinh, ngaysinh, idDantoc, idXa) khoá chính là idHs. Các khoá ngoài là idDantoc tham chiếu đến bảng dantoc, idXa tham chiếu đến bảng xa;
lophs (idLop, idHs) khoá chính là (idLop, idHs); idLop là khóa ngoài tham chiếu đến bảng lop; idHs là khoá ngoài tham chiếu đến bảng hocsinh.
Các khoá chính có thể chọn kiểu dữ liệu nguyên không âm, tự động tăng; tenDantoc, tenXa, tenLop, hoten kiểu xâu kí tự; ngaysinh kiểu date; gioitinh kiểu 1 kí tự, với quy ước 0 – nam, 1 – nữ.