一、什么是hql
1.hql 是hibernate里的查询语言
二、hql与sql的区别
SQL
1.表名/列名
查询所有(这里的student是表名) select * from student
2.不区分大小写
sql的查询语句不区分大小写,不管是大写还是小写都能通过执行。
3.别名
4.?,从顺序1开始计算位置
select * from student where sid=?
ps.setInt(1,123)
5.不支持:命名参数
6.面向结构查询语言
HQl
1.类名/属性
查询所有(这里的student是类名,) from student
2.区分大小写,关键字不区分大小写
而hql区分大小写,类名和属性名严格区分大小写,而关键字不区分大小写。
3.别名
4.?,从下标0开始计算位置
select * from student where sid=?
ps.setInt(0,123)
5.:命名参数
select * from student where sid=:
xx.setInt(“sid”,xx)
6.面向对象的查询语言