2011-05-06 26 views
7

¿Cómo funciona la propiedad de propiedad href = de maxresult? en el siguiente ejemplo:Hibernate búsqueda de resultados límite

Query query = session.createQuery("from MyTable"); 
query.setMaxResults(10); 

¿Obtiene esto todas las filas de la base de datos, pero solo se muestran 10? o esto es lo mismo que limit en sql.

Respuesta

11

Es lo mismo que LIMIT, pero es independiente de la base de datos. Por ejemplo, MS SQL Server no tiene LIMIT, por lo que hibernate se encarga de traducir esto. Para MySQL, agrega LIMIT 10 a la consulta.

Por lo tanto, siempre use query.setMaxResults(..) y query.setFirstResult(..) en lugar de las cláusulas nativas de sql.

0

SetMaxResults recupera todas las filas y muestra el número de filas que se establecen. En mi caso, no logré encontrar un método que realmente pueda recuperar solo un número límite de filas. Mi recomendación es crear la consulta usted mismo y establecer allí "rownum" o "límite".

Cuestiones relacionadas