sql 在sqlplus下能正确执行,但是hibernate 原生sql执行报列名无效错误
2013-08-17 11:21
435 查看
这是我原来的sql:
在sqlplus下能争取执行,但是
报SQL Error: 17006, SQLState: null 列名无效错误。
后修改sql为:
把最里层的sql中指定的字段,改为“*”,问题得以解决。
String sql="select s.* from(select t.*,rownum n from (select id,msg_Title,msg_Sdate from Sys_Msg where status=? and msg_sdate<sysdate and msg_edate>sysdate order by sort_Num,msg_Sdate desc) t) s where s.n in (:num)";
在sqlplus下能争取执行,但是
Query query=this.getSession().createSQLQuery(sql).addEntity(SysMsg.class); query.setParameter(0, Status.SURE.value()); query.setParameterList("num", nums); query.list();
报SQL Error: 17006, SQLState: null 列名无效错误。
后修改sql为:
select s.* from(select t.*,rownum n from (select * from Sys_Msg where status=? and msg_sdate<sysdate and msg_edate>sysdate order by sort_Num,msg_Sdate desc) t) s where s.n in (:num)
把最里层的sql中指定的字段,改为“*”,问题得以解决。
相关文章推荐
- hibernate 使用原生sql不能执行删除!
- sql 2012 提示列名无效 但可以执行问题
- Hibernate执行原生sql将查询结果直接转为VO
- [Oracle]查看SQL的执行计划 - AUTOTRACE,遇到错误ORA-00904: "OTHER_TAG": 标识符无效
- 使用Hibernate SQLQuery执行原生SQL
- Spring的HibernateDaoSupport及用hibernate执行原生SQL
- Hibernate执行原生SQL返回List<Map>类型结果集
- hibernate 执行原生sql,select返回string,long
- hibernate执行原生Sql语句的方法(转)
- 关于No Dialect mapping for JDBC type :-9 hibernate执行原生sql语句问题 .
- 关于No Dialect mapping for JDBC type :-9 hibernate执行原生sql语句问题
- hibernate执行原生sql的别名问题
- 使用原生sql查询数据返回object类型list时,转换数据列出现转换类型错误(但写法正确)
- 使用Hibernate SQLQuery执行原生SQL
- 关于No Dialect mapping for JDBC type :-9 hibernate执行原生sql语句问题
- java 执行sql错误 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知
- Hibernate执行原生SQL别名导致的一个Bug
- Hibernate 执行原生sql语句字段名相同会被覆盖的问题
- Microsoft OLE DB Provider for SQL Server 错误 '80040e14' 列名 'xxx' 无效。
- hibernate,执行原生SQL并将结果转换为Map