我在Java SE应用程序中使用hibernate来查询数据库中的一些数据。但是我需要在where子句中使用波兰字符,例如:
where province='MAŁOPOLSKA'
但结果集为空。
使用 SQL Server 时,我只需要在'Małopolska'字符串之前添加N个字母。 我试图找到一个解决方案,我发现的唯一一件就是将这些行放入配置文件
<property name="hibernate.connection.CharSet">UTF-8</property>
<property name="hibernate.connection.characterEncoding">UTF-8</property>
<property name="hibernate.connection.useUnicode">true</property>
但它没有改变任何东西,即我得到空的结果集。
任何提示都将不胜感激。
答案 0 :(得分:0)
解决。 我用参数替换了简单的'MAŁOPOLSKA'字符串,它工作正常。例如:
where province = :provName
q.setParameter("provName", 'MAŁOPOLSKA');