SQL与HQL的区别

SQL

  1. 结构化查询语言,表与列
  2. 不区分大小写
  3. 可以通过空格与as给表和列起别名
  4. 支持?占位符,从顺序1开始

HQL

  1. 面向对象的查询语言,类与属性
  2. 类和属性区分大小写,但关键字不区别大小写
  3. 可以通过空格与as给类和属性起别名
  4. 支持?占位符,从下标0开始(hibernate5之后不支持)
  5. 支持:命名参数

HQL常见错误

Query接口常用方法
单个参数
setXXX(int,XXX);
setXXX(String,XXX);
setParameter(int,Object);
setParameter(String,Object);
一组参数
setParameterList(String,Object[]);//窗口中最少要保存一个值
setParameterList(String,Collection);

你可能感兴趣的:(hibernate)