Câu 2 Phần II · Đề tham khảo Tin học 2025 (Bộ GD&ĐT)

Tin học 2025 · Có lời giải chi tiết

Câu 2.

Để hỗ trợ việc quản lí thông tin nhân sự tại một công ty, một cơ sở dữ liệu quan hệ được xây dựng với 3 bảng có cấu trúc như sau:

  • NHANVIEN (MaNV, HoTen, GioiTinh, NgaySinh) lưu thông tin: mã nhân viên, họ tên nhân viên, giới tính, ngày sinh.

  • DUAN (MaDA, TenDA, BatDau, KetThuc) lưu thông tin: mã dự án, tên dự án, ngày bắt đầu, ngày kết thúc.

  • THAMGIA (MaDA, MaNV, ViTri) lưu thông tin: mã dự án, mã nhân viên và vị trí nhân viên đó trong dự án.

Một nhân viên của công ty có thể tham gia nhiều dự án và một dự án có thể có nhiều nhân viên. Khi tìm hiểu về cơ sở dữ liệu trên, một số bạn học sinh đưa ra các nhận xét sau:

  • a)

    HoTen là một trường tương ứng với một cột của bảng NHANVIEN.

    Đúng
  • b)

    Bộ hai thuộc tính MaDA và MaNV là khoá chính của bảng THAMGIA.

    Đúng
  • c)

    Công ty sử dụng một máy chủ để lưu dữ liệu, do vậy phải chọn hệ cơ sở dữ liệu phân tán để quản lí cơ sở dữ liệu.

    Sai
  • d)

    Câu lệnh SQL sau đây liệt kê họ tên các nhân viên và vị trí của họ trong dự án có mã dự án là 1.

    SELECT NHANVIEN.HoTen, THAMGIA.ViTri
    FROM NHANVIEN INNER JOIN THAMGIA ON NHANVIEN.MaNV = THAMGIA.MaNV
    WHERE MaDA = 1
    Đúng
Lời giải

a) Đúng: trong bảng của cơ sở dữ liệu quan hệ, mỗi trường (thuộc tính) tương ứng với một cột; HoTen là một trường của bảng NHANVIEN.

b) Đúng: một nhân viên tham gia nhiều dự án và một dự án có nhiều nhân viên, nên riêng MaDA hay riêng MaNV đều có thể lặp lại trong THAMGIA; cặp (MaDA, MaNV) mới xác định duy nhất mỗi bản ghi nên là khoá chính.

c) Sai: dữ liệu lưu trên một máy chủ là hệ cơ sở dữ liệu tập trung; hệ cơ sở dữ liệu phân tán dùng khi dữ liệu được lưu ở nhiều máy tính khác nhau trên mạng.

d) Đúng: phép INNER JOIN ghép mỗi nhân viên với các bản ghi tham gia cùng MaNV, WHERE MaDA = 1 giữ lại các dòng thuộc dự án mã 1 (MaDA chỉ có trong THAMGIA nên không nhầm lẫn), và SELECT lấy họ tên cùng vị trí của họ.