0
我有一個自定義命名策略,在表名中添加前綴。我的問題是:當我創建一個本地查詢(使用EntityManager.createNativeQuery)時,我應該在我的查詢的FROM子句中使用我的表的前綴名稱,還是應該使用非前綴名稱(如在JPQL查詢中)?本機查詢是否使用命名策略來解析給定SQL查詢的「from」子句中的表名?
我有一個自定義命名策略,在表名中添加前綴。我的問題是:當我創建一個本地查詢(使用EntityManager.createNativeQuery)時,我應該在我的查詢的FROM子句中使用我的表的前綴名稱,還是應該使用非前綴名稱(如在JPQL查詢中)?本機查詢是否使用命名策略來解析給定SQL查詢的「from」子句中的表名?
原生查詢是一個SQL查詢,因此如果直接通過JDBC將其置於數據存儲中,那麼您可以輸入它在數據存儲中執行的操作。這與實體無關
實際上,原生查詢並不像在數據庫上那樣執行,因爲原生查詢接受參數(這有點意味着查詢需要被解析)。 – jhek 2013-04-10 09:39:45
它們接受JDBC參數中的參數...。所以是的,他們就像通過JDBC執行一樣。取決於你的JPA實現,如果他們做了任何「特殊」的事情,但是一個本地查詢是作爲一個簡單的傳遞到數據存儲 – DataNucleus 2013-04-10 09:44:47
好的,非常感謝你對這些解釋 – jhek 2013-04-10 10:35:02