logo

Xét CSDL được mô tả như ở Hình 1. Nếu cần biết tên cuốn sách đã được mượn với ID = 1

Trả lời câu hỏi SGK Tin 11 Cánh Diều trang 75: Xét CSDL được mô tả như ở Hình 1. Nếu cần biết tên cuốn sách đã được mượn với ID = 1 trong bảng MƯỢN-TRẢ, em sẽ viết câu truy vấn như thế nào? (Bài 6: Truy vấn trong cơ sở dữ liệu quan hệ (Tiếp))

Câu hỏi: Xét CSDL được mô tả như ở Hình 1. Nếu cần biết tên cuốn sách đã được mượn với ID = 1 trong bảng MƯỢN-TRẢ, em sẽ viết câu truy vấn như thế nào?

câu truy vấn

Trả lời ngắn gọn: 

Để lấy tên cuốn sách đã được mượn với ID = 1 từ CSDL, ta có thể sử dụng câu truy vấn SQL sau đây:

SELECT TenSach FROM BangSach, BangMuonTra WHERE BangMuonTra.MaSach = BangSach.MaSach AND BangMuonTra.ID = 1

Sau đó, ta có thể thực thi câu truy vấn này bằng cách sử dụng thư viện Python như sqlite3 để truy vấn CSDL và lấy kết quả trả về.

Trả lời chi tiết:

Để lấy tên cuốn sách đã được mượn với ID = 1, ta cần kết nối 2 bảng "MƯỢN-TRẢ" và bảng "SÁCH" thông qua trường "Mã sách", sau đó sử dụng câu truy vấn SELECT để lấy tên sách tương ứng với ID = 1. Dưới đây là câu truy vấn trên Python:

import sqlite3

# Kết nối tới CSDL
conn = sqlite3.connect('ten_file.db')

# Tạo con trỏ để thực thi các câu truy vấn
cur = conn.cursor()

# Thực hiện câu truy vấn để lấy tên sách đã được mượn với ID = 1
cur.execute("SELECT TenSach FROM BangSach, BangMuonTra WHERE BangMuonTra.MaSach = BangSach.MaSach AND BangMuonTra.ID = 1")

# Lấy kết quả truy vấn
result = cur.fetchone()

# In ra tên sách
print(result[0])

# Đóng kết nối
conn.close()

Lưu ý rằng câu truy vấn SQL trong ví dụ trên sử dụng hai bảng để lấy thông tin vì vậy cần phải sử dụng các điều kiện để kết nối các bảng này với nhau.

>> Xem toàn bộ: Soạn Tin 11 Cánh Diều

icon-date
Xuất bản : 06/03/2023 - Cập nhật : 31/07/2023