Danh sách trả về và vô hướng
Có một số phương thức của đối tượng Truy vấn ngay lập tức phát hành SQL và trả về một giá trị chứa kết quả cơ sở dữ liệu đã tải.
Dưới đây là tóm tắt ngắn gọn về danh sách trả về và các đại lượng vô hướng -
tất cả()
Nó trả về một danh sách. Dưới đây là dòng mã cho hàm all ().
session.query(Customers).all()
Bảng điều khiển Python hiển thị biểu thức SQL sau được phát ra:
SELECT customers.id
AS customers_id, customers.name
AS customers_name, customers.address
AS customers_address, customers.email
AS customers_email
FROM customers
Đầu tiên()
Nó áp dụng giới hạn là một và trả về kết quả đầu tiên dưới dạng vô hướng.
SELECT customers.id
AS customers_id, customers.name
AS customers_name, customers.address
AS customers_address, customers.email
AS customers_email
FROM customers
LIMIT ? OFFSET ?
Các tham số giới hạn cho LIMIT là 1 và OFFSET là 0.
một()
Lệnh này tìm nạp đầy đủ tất cả các hàng và nếu không có chính xác một nhận dạng đối tượng hoặc hàng tổng hợp trong kết quả, nó sẽ gây ra lỗi.
session.query(Customers).one()
Với nhiều hàng được tìm thấy -
MultipleResultsFound: Multiple rows were found for one()
Không tìm thấy hàng nào -
NoResultFound: No row was found for one()
Phương thức one () hữu ích cho các hệ thống mong đợi xử lý “không tìm thấy mục nào” so với “tìm thấy nhiều mục” khác nhau.
vô hướng()
Nó gọi phương thức one () và khi thành công trả về cột đầu tiên của hàng như sau:
session.query(Customers).filter(Customers.id == 3).scalar()
Điều này tạo ra câu lệnh SQL sau:
SELECT customers.id
AS customers_id, customers.name
AS customers_name, customers.address
AS customers_address, customers.email
AS customers_email
FROM customers
WHERE customers.id = ?