java ee

SQL是關係數據庫查詢語言,面對的數據庫;而hql是Hibernate這樣的數據庫持久化框架提供的內置查詢語言,雖然他們的目的都是爲了從數據庫查詢須要的數據,但sql操做的是數據庫表和字段,而做爲面向對象的hql操做的則是持久化類及其屬性。
JPQL基於首次在EJB2.0中引入的EJB查詢語言(EJB QL),Java持久化查詢語言(JPQL)是一種可移植的查詢語言,旨在以面向對象表達式語言的表達式,將SQL語法和簡單查詢語義綁定在一塊兒.使用這種語言編寫的查詢是可移植的,能夠被編譯成全部主流數據庫服務器上的SQL。
 
JPQL就是一種查詢語言,具備與SQL 相相似的特徵,JPQL是徹底面向對象的,具有繼承、多態和關聯等特性,和hibernate HQL很類似。

JPQL( Java 持久性查詢語言)是專門爲Java 應用程序訪問和導航實體實例設計的。JPQL是EJB2使用的查詢語言EJB QL的擴展,它繼承了EJB QL並對其作了一些改變。JPQL是面向對象的查詢語言,所以它能夠徹底理解繼承、多態和關聯等特徵。並且JPQL內置了大量函數,極大地方便了JPQL查詢的功能。固然JPQL底層依然是基於SQL的,但JPQL到SQL的轉換無須開發者關心,JPQL解析器會負責完成這種轉換,並負責執行這種轉換的SQL語句來更新數據庫。 java

SQL是面向關係數據庫的查詢語言,所以SQL操做的對象是數據表、數據列;而JQPL操做的對象是實體對象,對象屬性。sql

HQL(Hibernate Query Language)是面向對象的查詢,from後面跟的是「表名」,where後用「表中字段」作條件。在Hibernate中使用查詢時,
通常用HQL查詢語句。由於HQL是面向對象的,而對象類的名稱和屬性都是大小寫敏感的,因此是大小寫敏感的。數據庫

相關文章
相關標籤/搜索