执行hibernate查询时出现异常

时间:2013-09-16 10:23:48

标签: mysql hibernate

@NamedQuery(name = "Bookings.findBookedRoomByRoomTypeid", query = "SELECT b.roomno FROM Bookings b, Room r WHERE (b.status = 'checkin') AND (b.roomno = r.oid) AND (r.temproomtypeid = :temproom)" ),

例外是

Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.oid)) AND (t2.temproomtypeid = 1)) AND (t0.oid = t1.roomno))' at line 1
Error Code: 1064
Call: SELECT t0.oid, t0.floorno, t0.temproomtypeid, t0.roomtypeid FROM room t0, room t2, bookings t1 WHERE ((((t1.status = ?) AND (t1.roomno = t2.oid.t2.oid)) AND (t2.temproomtypeid = ?)) AND (t0.oid = t1.roomno))
    bind => [2 parameters bound]

1 个答案:

答案 0 :(得分:0)

你可以这样试试

SELECT b.roomno FROM Bookings b, Room r WHERE (b.status = 'checkin') AND (b.roomno =:r.oid) AND (r.temproomtypeid =:temproom)