Hỗ trợ tiêu chí Hibernate cung cấp phương thức setMaxResults()
để giới hạn kết quả được trả về từ db.Cơ chế giới hạn tiêu chuẩn Hibernate?
Tôi không thể tìm thấy bất kỳ câu trả lời nào cho tài liệu này trong tài liệu của họ - cách triển khai này được thực hiện như thế nào? Có phải truy vấn cho toàn bộ tập kết quả và sau đó chỉ trả về số yêu cầu? Hoặc là nó thực sự hạn chế truy vấn vào cuối cơ sở dữ liệu (nghĩ LIMIT từ khóa như trong mySql). Điều này quan trọng bởi vì nếu một truy vấn có khả năng có thể trả lại nhiều kết quả, tôi thực sự cần phải biết nếu setMaxResults()
vẫn sẽ truy vấn tất cả các hàng trong cơ sở dữ liệu (điều này sẽ là xấu).
Ngoài ra - nếu nó thực sự hạn chế số lượng hàng trên cơ sở dữ liệu, làm cách nào để đạt được cross-db này (vì tôi không nghĩ mọi rdbms đều hỗ trợ chức năng LIMIT như mySql).
Intersting. Sau đó, tại sao, bạn có nghĩ rằng, họ đã không cung cấp một cách để hạn chế sử dụng HQL nếu họ có thể chuyển đổi sang phương ngữ cụ thể đưa ra một tiêu chí setMaxResults? – john
có một cái nhìn trong http://stackoverflow.com/questions/1239723/how-do-you-do-a-limit-query-in-hql – Ritesh
điều này có thể cung cấp một số rõ ràng: http://stackoverflow.com/questions/1239723/how-do-bạn-do-a-giới hạn-truy vấn-trong-hql.Hiểu biết của tôi là nó nắm giữ để duy trì cơ sở dữ liệu phần HQL bất khả tri, các tính năng cụ thể của phương ngữ được thực hiện thông qua các cuộc gọi phương thức bổ sung như setMaxResults – brent777