关于hql语句的一些问题
1.student is not mapped问题:
在执行显示数据库数据的时候出错
大概提示说:
errors: s.entr_Id
student is not mapped
碰到这种情况一般是: hql的配置文件和数据库的数据弄混了
要知道 hql是写的是PO对象,不是table名
数据库里的studnet表反转后生成Student.hbm.xml和Student.java
Student.hbm.xml部分代码如下:
<class name="com.hibernate.student" table="student">
<id name="id" type="java.lang.String">
<column name="id" />
<generator class="native" />
</id>
<property name="entrId" type="java.lang.String">
<column name="entr_Id" not-null="true" />
</property>
<property name="chName" type="java.lang.String">
<column name="chName" length="20" />
</property>
在ADO文件中。查询语句 hql="from student s where s.entr_Id=?;
是不正确的
应该改成hql="from Student s where s.entrId=?;
注意区分大小写。
2.hql语句的问题:要把hql语句与sql语句区分开来,
hql语句最明显的区别是语法比较严格,必须注意大小写。而sql则没有要求,另外,在执行的语句的时候一定要按照其格式要求:
如查询语句:String hql= "from Student where name=:name and pwd=:pwd" ;一定要按要求写,否则会执行不了。
另外,一些习惯问题。比如在执行sql语句的时先连接数据库,在执行hql是也一样(如:session=HibernateUtil.openSession();等)。
关于hql语句的一些问题的更多相关文章
- hibernate -- HQL语句总结
1. 查询整个映射对象所有字段 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query ...
- 执行HQL语句出现Remember that ordinal parameters are 1-based
今天使用hibernate出个奇怪的错误,第一次碰到 Remember that ordinal parameters are 1-based! 原因是 问题发生的原因是:hql语句里不需要参数,却添 ...
- hql语句查询实体类采用list方法的返回结果集
在hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况:1.查询全部字段的情况下,如"from 实体类", ...
- 【Hibernate 6】常用的hql语句以及N+1问题
HQL:Hibernate Query Language,是Hibernate框架中的查询语言,十分接近于SQL语言!以下介绍一些常用的Hql语句: 一.测试类 Classes类: <span ...
- 使用HQL语句的按照参数名字查询数据库信息的时候 “=:”和参数之间不能存在空格,否则会报错
问题描述: 今天在使用HQL的按照参数的名字查询数据库信息的时候报错如下: org.hibernate.QueryException: Space is not allowed after param ...
- Hibernate 的HQL语句,初级
这里讲解简单的HQL语句,因为很多比较复杂的外查询,用一般的查询很难完成 所以这里需要使用HQL @Test public void selquery(){ System.out.printf(&qu ...
- hibernate 之 HQL语句总结【转】
1. 查询整个映射对象所有字段 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query ...
- hql语句拼接的替换方式
hql语句拼接的替换方式 hql语句拼接 String hql = "FROM Topic t WHERE t.forum=? "; List<Object> para ...
- Hibernate框架HQL语句
这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利. 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Class ...
- 关于hibernate中hql语句 case when的写法
java hql case when的用法 if(null == sorter){ hql.append(" order by m.mDate desc,case when m.mealTi ...
随机推荐
- [转]RabbitMQ,ActiveMQ,ZeroMQ,Kafka之间的比较与资料汇总
MQ框架非常之多,比较流行的有RabbitMq.ActiveMq.ZeroMq.kafka.这几种MQ到底应该选择哪个?要根据自己项目的业务场景和需求.下面我列出这些MQ之间的对比数据和资料. 第一部 ...
- docker 部署nginx+weblogic集群
測试一段时间.再来报告
- rails rake 版本问题
rails rake 版本问题 通常情况下,如果我们电脑上同时装了不同版本的rake时,运行rake命令时会出错,如: rake db:migrate rake aborted! You have a ...
- AT command常用中文简解
1.常用操作1.1 AT命令解释:检测 Module 与串口是否连通,能否接收 AT 命令:命令格式:AT<CR>命令返回:OK (与串口通信正常) (无返回,与串 ...
- wamp5多站点配置教程
wamp5多站点配置教程 第一要做的是安装第二个apache服务一.找到Apache2的htppd.conf文件.例如:我的wamp是安装在G盘的,我的就是G:\wamp\Apache2\conf目录 ...
- e1084. 捕获错误和异常
All errors and exceptions extend from Throwable. By catching Throwable, it is possible to handle all ...
- sdi 采集卡---环视频拼接直播方案
http://www.upano.cn/# 360度无死角直播1080p 30fps http://search.jd.com/Search?keyword=sdi%E9%87%87%E9%9B%86 ...
- 在C语言中实现面向对象(2)
C语言是结构化和模块化的语言,它是面向过程的.但它也可以模拟C++实现面向对象的功能.那么什么是对象呢?对象就是一个包含数据以及于这些数据有关的操作的集合,也就是包含数据成员和操作代码(即成员函数). ...
- c# 异步编程demo (async await)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...
- 如果返回结构体类型变量(named return value optimisation,NRVO)
貌似这是一个非常愚蠢的问题,因为对于具有良好素质的程序员而言,在C中函数返回类型为结构体类型是不是有点不合格,干嘛不用指针做传入传出呢? 测试环境:Linux IOS 3.2.0-45-generic ...