SQL和HQL大小写敏感问题
来源:互联网 发布:中国金融数据库 编辑:程序博客网 时间:2024/06/05 16:30
今天在做Hibernate案例的时候,表单中接收的数据总是不对,利用谷歌浏览器F12打断点调试,传入的
参数出现了下面这种错误信息:
"<html><head> <title>Struts Problem Report</title> <style> pre { margin: 0; padding: 0; } </style></head><body> <h2>Struts Problem Report</h2> <p> Struts has detected an unhandled exception: </p><div id="exception-info"><table> <tr> <td><strong>Messages</strong>:</td> <td> <ol> <li>student is not mapped</li> <li>student is not mapped [from student where id=:id and pwd=:pwd ]</li> </ol> </td> </tr> <tr> <td><strong>File</strong>:</td> <td>org/hibernate/hql/internal/ast/util/SessionFactoryHelper.java</td> </tr> <tr> <td><strong>Line number</strong>:</td> <td>189</td> </tr> </table></div><div id="stacktraces"><hr /><h3>Stacktraces</h3><div class="stacktrace" style="padding-left: 0em"> <strong>org.hibernate.hql.internal.ast.QuerySyntaxException: student is not mapped [from student where id=:id and pwd=:pwd ]"
最后发现我的实体(Entity)是这样命名的,Student.java,而我的HQL语句是这样写的:
String hql = "from student where id=:id and pwd=:pwd";
当我把上面的student改写成Student后,程序就好使了。
这里我们可以意识到,SQL和HQL对待大小写是不同的:
SQL语句默认对大小写是不敏感的,即大写和小写是一样的。可以通过设置更改。
HQL对大小写是敏感的,原因是,HQL是面向对象的查询语句,里面的类名和属性名一定要和实体类的相对应。
首字母大写,属性名也要和getAbc()方法的一致,即abc。
1 0
- SQL和HQL大小写敏感问题
- Hashtableh和Datatable的大小写敏感问题
- MySQL大小写敏感问题和命名规范
- MySQL大小写敏感问题和命名规范
- php大小写敏感问题
- mysql大小写敏感问题
- 数据库大小写敏感问题
- mysql 大小写敏感问题
- 数据库大小写敏感问题
- php大小写敏感问题
- Mysql大小写敏感问题
- SQL Server 大小写敏感设置
- MySql大小写敏感问题探索
- oracle11g密码大小写敏感问题
- mysql 数据表大小写敏感问题
- Mysql大小写敏感的问题
- MySQL的大小写敏感问题
- Mysql大小写敏感的问题
- Java-JDBC-SQLSERVER-ORACLE-MYSSQL
- 网卡事件监测并且发送邮件
- oracle plsql练习题-考核题
- storm详解 学习 入门 之路
- JNI与Boolean和boolean
- SQL和HQL大小写敏感问题
- 引入项目中文乱码???明明是utf-8
- android studio Error:错误:非法字符:'\ufeff'解决方案
- c和c++如何使用vs2012生成DLL文件
- 傅立叶变换c语言实现
- Java压缩图片util,可等比例宽高不失真压缩,也可直接指定压缩后的宽高
- 集合框架
- java中的自动装箱和自动拆箱
- HDOJ 2014-青年歌手大奖赛_评委会打分