hibernate 中写sql 的问题

问题描述

hibernate 中写sql 的问题

public List findCartByOrderstatus(final String ostatus,final Users u) {
return this.getHibernateTemplate().execute(new HibernateCallback(){

@Override
public List doInHibernate(Session session) throws HibernateException, SQLException {

String sql="select * from Orderitem where

"+"Orderitem.order.ordersid in " +"(select order.ordersid from order WHERE order.orderstatus='待订单'
and order.usersid='402880e54811e0da014811e16e470001'";

Query query=session.createSQLQuery(sql);
为什么 从第二个select 开始就有错;
应该怎样改

解决方案

你少了个括号!!!!

时间: 2024-11-29 07:28:36

hibernate 中写sql 的问题的相关文章

sql-C#中写SQL语句,单双引号的区别,为什么会报标准表达式中数据类型不匹配。

问题描述 C#中写SQL语句,单双引号的区别,为什么会报标准表达式中数据类型不匹配. OleDbDataAdapter WorkPieceDataDA = new OleDbDataAdapter("update" + "[" + ming + "]" + "set " + lieming[j, 0] + " = '" + jilushuzhi_left[j, i] + "' where 点数 =

关于在Java代码中写Sql语句需要注意的问题

最近做程序,时不时需要自己去手动将sql语句直接写入到Java代码中,写入sql语句时,需要注意几个小问题. 先看我之前写的几句简单的sql语句,自以为没有问题,但是编译直接报错. String str = "insert into XXX(a,b,c) values ('"a.getA()"','"a.getB()"','"a.getC()"');"; 研究了半天发现应该是连接字符串问题,第一次修改过后将赋值字段前后加&qu

hibernate中使用SQL语句,其中包含冒号:,该怎么处理啊?

问题描述 SQL语句如下SELECT * from (SELECT @rownum:=@rownum+1 rownum, i.goid FROM (SELECT @rownum:=0) r, tablename i) as tmp where goid=1008300000054108表名tablename ,主键字段名goid我的目的是要在MYSQL中,获得某条记录的rownum,以查出某条记录在分页查询中的第几页. 解决方案 这个是hibernate的一个bug,一直没有修复.据说修复这个会

求助,hibernate中使用SQL语句,其中包含冒号:,该怎么处理啊?

问题描述 SQL语句如下SELECT*from(SELECT@rownum:=@rownum+1rownum,i.goidFROM(SELECT@rownum:=0)r,tablenamei)astmpwheregoid=1008300000054109表名tablename,主键字段名goid我的目的是要在MYSQL中,获得某条记录的rownum,以查出某条记录在分页查询中的第几页. 解决方案 解决方案二:\:转译试试解决方案三:这种转义是JAVA字符串的转义,对SQL没用.还有其他解决办法么

Hibernate中新的TableGenerator 机制

从 initialValue 说起 问题的发现源自对 JPA 中 TableGenerator 的测试.测试的环境有这样几个条件: 为方便查询的测试,Employee 表格在初始化时会导入部分记录,这部分记录的主键在初始脚本中手动写好,比如 1.2.3.4.(参看文章所附示例代码中的import_data.sql 文件). Employee 实体使用 TableGenerator 主键生成器,initialValue 的值设置为 10. 在单元测试中添加新的 Employee 记录. Emplo

在Java的Hibernate框架中使用SQL语句的简单介绍_java

Hibernate中有HQL查询语法.但我们用得比较熟的还是数SQL语句,那么应该怎么来让Hibernate支持SQL呢?这个不用我们去考虑了,Hibernate团队已经早就做好了.        废话不说,直接来例子啦. select * from t_user usr     上面是一条SQL语句,又是废话,是个人都知道.我们想让Hibernate执行这条语句,怎么办呢?看代码: Query query = session.createSQLQuery("select * from t_us

c# 中 string sql=string.format("")是什么意思?

问题描述 c#中写sql语句时:stringsql=string.format("")是什么意思?string.format有什么用,有什么好处的???? 解决方案 解决方案二:看这里.解决方案三:拼接字符串更方便和简洁.但是拼接SQL这么做不存在好处,因为这本身就是一个不正确的方法.应该使用参数化SQL.解决方案四:string.format是格式化字符串最大的好处是有多个参数的时候只在内存中分布一个字符串如过用++的方式就会分布多个例如:stringsql="select

criteria-请问Hibernate中CriteriaQuery可以使用原生sql作为排序条件么

问题描述 请问Hibernate中CriteriaQuery可以使用原生sql作为排序条件么 请问Hibernate中Criteria Query可以使用原生sql作为排序条件么? 正常情况下是 addOrder(Order.desc("column")); 希望order by nvl(column,'xxxx') desc 类似Hibernate 的条件查询就支持原生sql. 请问排序支持么?我搜索了一下,没有找到类似的api. 当然我使用hql就可以了,但是我前提已经使用了Cri

mysql-Mysql向表中某个字段添加有规律字符串怎么写SQL语句?例如(1P,2P,3P)

问题描述 Mysql向表中某个字段添加有规律字符串怎么写SQL语句?例如(1P,2P,3P) 如图所示 表 b 有三个字段aid,partname,partid,我希望partid字段可以根据partname字段的值添加有规律的字符串. 例如 partname字段值为PART 1则partid字段添加值 1P,partname字段值为PART 2则partid字段添加值 2P, partname的值除了上述格式还有TV 01,TV 02,特征都是字符串有(无)空格加数字, 还有种就是数字夹在字符