2016-04-30 29 views
0

我調試了半天,沒找到爲什麼這個HQL不工作:HQL語法錯誤

<sql-query name="getCampaignParameters"> 
    <![CDATA[ 
     from CampaignParameter cp 
     where cp.campaign = :campaign  
    ]]> 
    <query-param name="campaign" type="com.bean.Campaign"/> 
    </sql-query> 

它說:你在你的SQL語法錯誤;檢查對應於您的MySQL服務器版本的手冊,以找到正確的語法,用於在第1行的'CampaignParameter cp where cp.campaign = 1'附近使用

我沒有通過1,這可能是錯誤的事情?

回答

0

那麼,元素名爲sql-query。所以它應該包含一個SQL查詢,而不是一個HQL查詢。

如果您想要定義HQL查詢,請使用<query>

或者更好的是,停止使用XML文件來定義您的映射和查詢。

+0

謝謝,它的工作! –