私の目標は、HQLでMSSQL Fulltext関数を使用することです。どのような場合には、私の "fulltext"関数をcontains関数にマッピングする特定のSQLFunctionを記述しました。Hibernate + MSSQL + Fulltext Contains経由での検索
しかし、問題は、HQL(それ)のようなものですが、MSSQLが含む関数が使用しないか受け入れる戻り値の型を明示的に使用する必要があるということです。
これは、MSSQLでどのように動作するかです:
select distinct id from content c where CONTAINS(c.content, 'p')
これはHQLでそれを使用しての私の考えです:
select id from Content c where fulltext(c.content, 'p')
HQLは、戻り値の型を必要とするので、これは、動作しません。
select id from Content c where fulltext(c.content, 'p') = true
をそして、それはSQLとして生成されます:たとえば、これはHQLに解析するMS SQLでは動作しません
select distinct id from content c where CONTAINS(c.content, 'p') = 1
を。
私のアイデアはこれまでのところですが、何が、このセットアップでは可能ていないようだ。
- はミックスしようと
- (Hibernateが使用私のバージョンでこれをサポートしていません)戻り値のない解析機能を休止してくださいHQLとSQL(動作していないようです)
誰かが別のアイデアや助けを得ましたか?
私にHibernateのバージョンは3.2.6gaとMSSQLサーバーで2008
ハックですが、動作するハックです:) –