hibernate框架中直接执行SQL
问题描述:hql不能使用*,不能子查询,也不能用join on 等关键字,如何在hibernate框架中直接执行SQL?
解决方法(标红处):
StringBuffer sql = new StringBuffer();
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = dateFormat.format(now);
sql.append("insert into table2 select a.*,?,? from table1 a where a.no=?");
SQLQuery query = this.getSession().createSQLQuery(sql.toString());
query.setInteger(0, flag); //传值
query.setString(1, time);
query.setString(2, no);
query.executeUpdate();
顺便说说这个sql
这个SQL是把表1的内容复制到表2中(细节还是再写篇吧)