MSSQL 2008 EclipseLink 2.3.0 JPA 2.0
我正在尝试进行 JPQL 查询以使用 MSSQL 的全文搜索功能。
正如我们所知,FUNC 上瘾的 EclipseLink 函数不起作用 [1] 因为它期望返回值,而 MSSQL freetext
[2] 实际上不是一个函数,而是一些看起来像函数 [3] 的魔术谓词,我正在尝试使用[4]中提到的下一个强大的功能,SQL
我试过这个
and SQL('freetext(?, ?)', d.title, :title)
和这个
and SQL('freetext(?, :title)', d.title)
和 =1 结尾的组合
and SQL('freetext(?, ?)', d.title, :title) = 1
没有任何成功。它说的是
第 5 行,第 7 列:意外令牌 [(]。内部异常:NoViableAltException(83@[()* loopback of 383:9: (d= DOT right= attribute ) ])] 根本原因 NoViableAltException(83@[() 383:9 的环回:(d= DOT right= attribute )*])
其中第 5 行第 7 列在 SQL 关键字之后的第一个左括号周围。
我试图避免使用本机 SQL,因为我想利用不使用许多一对多相关类编写连接的优势。
使用 SQL 特殊功能的正确方法是什么?
[2] http://msdn.microsoft.com/en-us/library/ms176078(v=sql.105).aspx