首页 > 代码库 > org.hibernate.exception.SQLGrammarException: could not execute query

org.hibernate.exception.SQLGrammarException: could not execute query

// 打开会话
Session session = HibernateUtil.getSession();
// 开启事务
Transaction tx = null;
Wine wine;
try {
tx = session.beginTransaction();

String sql = "SELECT * FROM wine WHERE W_ID >= (SELECT floor(RAND() * (SELECT MAX(W_ID) FROM wine))) ORDER BY W_ID LIMIT 1 ; ";
// 使用会话获得对象
SQLQuery query = session.createSQLQuery(sql);
query.addEntity(Humor.class);
wine = (Wine) query.list().get(0);
// 提交事务
tx.commit();

 

除去SQL语法错误,还有可能是设置错误的实体,这样大意的错误不能再犯

org.hibernate.exception.SQLGrammarException: could not execute query