hql语句加别名的错误】的更多相关文章

写了一个查询数量的方法,结果执行不出来,debug后是runtimeException,然后就在那个hql里面使劲找,将他翻译成sql在数据库中执行,结果也没问题,原来的hql如下: 注意这个num,他就是罪魁祸首,这个hql是我用sql改造过来的,在sql中用这个别名没问题,正常查询出了结果,但是在hql中就因为有了他,程序执行到这就出错,而且抛异常也抛不出,将他去掉,或者加个as,程序就可以正常执行了. 还是对hql语句不熟悉,要继续学习啊.…
4.3 使用HQL查询 Hibernate提供了异常强大的查询体系,使用Hibernate有多种查询方式.可以选择使用Hibernate的HQL查询,或者使用条件查询,甚至可以使用原生的SQL查询语句,此外还提供了一种数据过滤功能,这些都可用于筛选目标数据. 下面简单介绍HQL语句的语法. HQL语句本身是不区分大小写的.也就是说,HQL语句的关键字和函数都是不区分大小写的.但HQL语句中所使用的包名.类名.实例名和属性名都区分大小写. 4.3.2 HQL查询的from子句 from子句是最简单…
Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL.但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承.多态 和关联之类的概念. 第 15 章 HQL: Hibernate查询语言 Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL.但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承.多态 和关联之类的概念. 15.1. 大小写敏感性问题除了Java类与…
第 15 章 HQL: Hibernate查询语言 Hibernate配备了一种很强大的查询语言,这样的语言看上去很像SQL.可是不要被语法结构 上的类似所迷惑,HQL是很有意识的被设计为全然面向对象的查询,它能够理解如继承.多态 和关联之类的概念. 15.1. 大写和小写敏感性问题 除了Java类与属性的名称外,查询语句对大写和小写并不敏感. 所以 SeLeCT 与 sELEct 以及 SELECT 是相同的,可是 org.hibernate.eg.FOO 并不等价于 org.hibernat…
概要: Hibernate 支持三种查询方式: HQL查询.Criteria查询及原声 SQL (Native SQL)查询. HQL(Hibernate Query Language,Hibernate 查询语言)是一种面向对象的查询语言,其中没有表和字段的概念,只有类.对象和属性的概念,大家在学习中要注意. Criteria 查询采用面向对象的方式构造查询.原生 SQL 查询就是直接执行 SQL 语句的查询,可以在 SQL 中利用不同数据库所特有的一些特性进行查询,例如,数据库是 Oracl…
今天使用hibernate出个奇怪的错误,第一次碰到 Remember that ordinal parameters are 1-based! 原因是 问题发生的原因是:hql语句里不需要参数,却添加了一个参数! 我的HQL语句: @Override public Dept getDeptById(Dept dept) { return (Dept) super.getHibernateTemplate().find("from Dept d where d.did=:did", d…
HQL:Hibernate Query Language,是Hibernate框架中的查询语言,十分接近于SQL语言!以下介绍一些常用的Hql语句: 一.测试类 Classes类: <span style="font-family:KaiTi_GB2312;font-size:18px;">package com.bjpowernode.hibernate; import java.util.Set; public class Classes { private int i…
问题描述: 今天在使用HQL的按照参数的名字查询数据库信息的时候报错如下: org.hibernate.QueryException: Space is not allowed after parameter prefix ':' [from Users user where user.address=: userAddress] at org.hibernate.engine.query.spi.ParameterParser.parse(ParameterParser.java:95) at…
这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利. 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Classroom与Student是一对多的关系,这里仅仅贴出这三个bean的属性代码: Special类: public class Special { private int id; private String name; private String type; private Set<Classro…
java hql case when的用法 if(null == sorter){ hql.append(" order by m.mDate desc,case when m.mealTime = 'morning' then '1' when m.mealTime = 'noon' then '2' when m.mealTime = 'night' then '3' when m.mealTime = 'midnight' then '4' end "); } 注: 上面hql语…
[版权申明:本文系作者原创,转载请注明出处] 文章出处:http://blog.csdn.net/sdksdk0/article/details/51675005 作者: 朱培          ID:sdksdk0 Hive环境的搭建在这里也不重复说了,安装配置可以查看我的这篇文章:http://blog.csdn.net/sdksdk0/article/details/51512031.在这里主要是分享一下HQL语句实践及其函数的基本使用. 一.Hive的基本概念 在Hive中没有插入操作,…
// HQL: Hibernate Query Language.// 特点:// >> 1,与SQL相似,SQL中的语法基本上都可以直接使用.// >> 2,SQL查询的是表和表中的列:HQL查询的是对象与对象中的属性.// >> 3,HQL的关键字不区分大小写,类名与属性名是区分大小写的.// >> 4,SELECT可以省略. // 1,简单的查询,Employee为实体名而不是数据库中的表名(面向对象特性)hql = "FROM Employ…
在hql语句里面,in的使用方法比较特别. from DomesticCat cat where cat.name in ( 'Foo', 'Bar', 'Baz' ) in后面是一个list,我写的也是list.但是在项目中,会报一个类型转换的错误. 还有一种方式是这样的: String hql="FROM A WHERE A.ID IN (:alist)"; Query query = getSession().createQuery(hql); query.setParamete…
一.HQL语句中数据类型转换: 我们需要从数据库中取出序号最大的记录,想到的方法就是使用order by子句进行排序(desc倒序),然后取出第一个对象,可是当初设计数据库时(我们是在原来的数据库的基础上开发新系统),竟然将序号字段的类型设成了varchar2,真是让人郁闷,这样的话,如果排序的话,就是对字符串排序,12是比2小的数,那么就需要转换一下类型. 以下写法调整中是错误的,不能执行,报空指针错误:select cast(t.a as Integer) from table_1 t 我也…
别名概述 PHP5.3+支持命名空间:namespace,命名空间的一个重要功能是能够使用别名(alias)来引用一个符合规则的名字. 命名空间支持3中形式的别名引用(或称之为引入)方式:类(class)别名.接口(interface)别名和命名空间(namespace)名字别名. PHP5.6+还支持函数别名和常量别名. (注:php.net 站点上关于别名这一段的中文描写叙述有歧义和错误,更正如上) 详细语法格式 use xxx\xxx\xxx as xx; 所以use语句实际上是一种别名引…
1.使用Myeclipse逆向工程生成实体和配置信息: 步骤1:配置MyEclipse Database Explorer: 步骤2:为项目添加hibernate的依赖: 此处打开后,点击next进入下个页面: 此处选择,主键自增,然后点击Finish: 2.hql语句各种查询: Hibernate.cfg.xml: <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "…
现在有实体类 Student 和User . public class Student{ private String id; private Sting classRoom; private User user; @Id@GeneratedValue(generator = "paymentableGenerator")@GenericGenerator(name = "paymentableGenerator", strategy = "uuid&qu…
java执行sql语句使用别名时显示Column '*' not found 在做一个小项目时遇到个问题,执行sql语句使用别名时总是报sql异常 Column '*' not found,折腾半天终于找到了原因,下面是具体的错误,如果大家遇到同样的问题在找解决方法,可直接跳过看最后的解决方法. 问题描述 我在本地使用的是java.mysql.tomcat 服务器上的数据库为MariaDB(完全兼容MySQL) 在服务器上MariaDB中建立test数据库,新建student表如下 执行sql语…
HQL查询:Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查询特性,因此 Hibernate将HQL查询方式立为官方推荐的标准查询方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更 加面向对象的封装.完整的HQL语句形势如下: Select/update/delete…… from …… where …… group…
这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利. 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Classroom与Student是一对多的关系,这里仅仅贴出这三个bean的属性代码: Special类: public class Special { private int id; private String name; private String type; private Set<Classro…
1. 查询整个映射对象所有字段 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query = session.createQuery(hql); List<Users> users = query.list(); for(Users user : users){ System.out.println(user.getName() + " : " + user.ge…
在hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况:1.查询全部字段的情况下,如"from 实体类",list中封装的对象为实体类本身,各属性都将得到填充.2.只查询一个字段,默认情况下,list中封装的是Object对象.3.查询两个或两个以上的字段,默认情况下,list中封装的是Object[],长度与所查询的字段数一致. 对于后两种情况,用标签遍历时不太方便,因为无法直接转换成实体类的对象.比较简单的解…
这里讲解简单的HQL语句,因为很多比较复杂的外查询,用一般的查询很难完成 所以这里需要使用HQL @Test public void selquery(){ System.out.printf("hello"); Configuration config = new Configuration(); SessionFactory sessionfactory = config.configure("hibernate.cfg.xml").buildSessionFa…
1. 查询整个映射对象所有字段 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query = session.createQuery(hql); List<Users> users = query.list(); for(Users user : users){ System.out.println(user.getName() + " : " + user.ge…
hql语句拼接的替换方式 hql语句拼接 String hql = "FROM Topic t WHERE t.forum=? "; List<Object> parameters = new ArrayList<Object>(); parameters.add(forum); if (viewType == 1) { hql += "AND t.type = ?"; parameters.add(Topic.TYPE_BEST); } i…
出错场景是升级oracle驱动,将版本从ojdbc14升级到ojdbc6,hibernate执行原生态sql语句会报如下错误:org.hibernate.MappingException: No Dialect mapping for JDBC type: -9org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:948)org.springframework.web.servl…
HQL查询: 1.有关hql查询语句中的问号参数形式,如果出现有多个问号,这对后面设置参数就比较麻烦. 如:from User user where user.name=? and user.age=? and user.sex=? and ...; 对这样的语句赋值,容易出错. 可以采用宁一种命名参数方式解决它. 如: from User user where user.name=:var1 and user.age=:var2 and user.sex=:var3 and ...; quer…
Query: 代表面向对象的一个Hibernate查询操作.在Hibernate中,通常使用session.createQuery()方法接收一个HQL语句,然后调用Query的 list()或uniqueResult()方法执行查询.所谓的HQL是Hibernate Query Language缩写,其语法很像SQL,但它是完全面向对象的. 在Hibernate中使用Query对象的步骤,具体: 1.获得Hibernate的Session对象 2.编写HQL语句 3.调用session.cre…
//需要保证Emp和EmpProperties中的setter和getter以及属性以及 参数占位符(:eName) 的一致//动态查询 @Test public void test4(){ EmpProperties ep=new EmpProperties(); //set query conditions ep.seteName("%A%"); ep.setStartDate(new Date(383155200000L)); ep.setEndDate(new Date());…
Hibernate的hql语句save,update方法不执行 可能出现的原因问题: 未进行事务管理 需要进行xml事务配置或者注解方式的事务配置…