Hi,
I'm a relatively new user to hibernate.
I'm using hibernate 3 and mysql 4.1.22. I'm trying to execute the following sql query that would get me a list of cities from my database ordered by distance to an input [latitude, longtitude].
To do this, I created a subselect and use mysql functions to do the calculations.
Code:
SQLQuery q = session.createSQLQuery("select *, sqrt(pow(a, 2) + pow(b, 2)) as distance from (select *, abs(:latitude - latitude) as a, abs(:longitude - longitude) as b from user where activated = true and site_id = :site_id) as temp order by distance");
q.setParameter("site_id", site.getId());
q.setParameter("latitude", latitude);
q.setParameter("longitude", longitude);
return q.list();
However, I get the following exception on q.list():
Code:
org.hibernate.MappingException: No Dialect mapping for JDBC type: -1
at org.hibernate.dialect.TypeNames.get(TypeNames.java:56)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:81)
at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:192)
at org.hibernate.loader.custom.CustomLoader.getHibernateType(CustomLoader.java:170)
at org.hibernate.loader.custom.CustomLoader.autoDiscoverTypes(CustomLoader.java:138)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1678)
What do I need to change to make this work?
Thanks!