Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql HQL是否选择查询=选择*?_Sql_Hibernate_Hql - Fatal编程技术网

Sql HQL是否选择查询=选择*?

Sql HQL是否选择查询=选择*?,sql,hibernate,hql,Sql,Hibernate,Hql,最近,我在处理HQL时遇到了一个问题:简单的HQL select query=是否与sql select*语句对应,特别是在性能方面 例如,以下内容是否相同 HQL: SQL: 如果您感兴趣,我将使用MS SQL Server 提前谢谢 两者之间有一个区别 HQL:将结果保存在缓存中,从第二次从缓存中获取结果开始 SQL:要运行SQL,可以使用createSQLQuery方法。SQL查询不会从缓存中得到结果,每次都会命中数据库。是的,您的理解是正确的,两者都是相同的,但是第一次HQL会很慢,但下

最近,我在处理HQL时遇到了一个问题:简单的HQL select query=是否与sql select*语句对应,特别是在性能方面

例如,以下内容是否相同

HQL:

SQL:

如果您感兴趣,我将使用MS SQL Server


提前谢谢

两者之间有一个区别

HQL:将结果保存在缓存中,从第二次从缓存中获取结果开始


SQL:要运行SQL,可以使用createSQLQuery方法。SQL查询不会从缓存中得到结果,每次都会命中数据库。

是的,您的理解是正确的,两者都是相同的,但是第一次HQL会很慢,但下一次HQL会快得多,因为它已经编译并且已经有了所需的对象。是的,这就是冬眠的美
Query query = session.createQuery("from Person where name= :name");
query.setParameter("name", "Peter");
List list = query.list();
Select * from Person where name = "Peter"