BÀI 23: THỰC HÀNH TRUY XUẤT DỮ LIỆU QUA LIÊN KẾT CÁC BẢNG
Nhiệm vụ 1. Truy xuất dữ liệu từ hai bảng (Liên kết bảng)
- Để lấy được danh sách gồm "Tên bản nhạc" (nằm ở bảng bannhac) và "Tên nhạc sĩ" (nằm ở bảng nhacsi), ta sử dụng mệnh đề INNER JOIN trong truy vấn SQL.
- Cú pháp kết nối hai bảng: SELECT [các trường] FROM bảng_a INNER JOIN bảng_b ON bảng_a.khóa_ngoại = bảng_b.khóa_chính;.
- Cụ thể cho bài toán: SELECT bannhac.tenBannhac, nhacsi.tenNhacsi FROM bannhac INNER JOIN nhacsi ON bannhac.idNhacsi = nhacsi.idNhacsi;.
- Tại cửa sổ Truy vấn, nhập lệnh và ấn F9 (hoặc nút Run). HeidiSQL hỗ trợ đổi màu cú pháp (syntax coloring) và tự động gợi ý tên trường khi gõ dấu chấm sau tên bảng.
- Nếu hai bảng có tên trường giống nhau (như idNhacsi), có thể dùng từ khóa AS để đặt bí danh cho cột giúp phân biệt dễ dàng trên kết quả hiển thị.
Nhiệm vụ 2. Truy xuất dữ liệu từ nhiều bảng
Nếu cần liên kết từ 3 bảng trở lên (VD: Bảng thu âm, bản nhạc, ca sĩ), chỉ cần tiếp tục nối thêm mệnh đề INNER JOIN ... ON ... cho các bảng tiếp theo trong cùng một câu lệnh SQL.
Nhiệm vụ 3. Giao diện ứng dụng thực tế
- Đối với người dùng cuối, các ứng dụng chuyên nghiệp sẽ ẩn đi quá trình liên kết phức tạp. Màn hình "Quản lý danh sách các bản thu âm" sẽ hiển thị đầy đủ tên bản nhạc, tên nhạc sĩ, tên ca sĩ một cách thống nhất và cung cấp danh sách lựa chọn an toàn để hạn chế rủi ro phá vỡ tính nhất quán của cơ sở dữ liệu.