繁体   English   中英

Nhibernate 2:CreateQuery不支持中文字符

[英]Nhibernate 2: CreateQuery not supporting chinese character

以下是我的代码:

String hsql = "from Customer c where c.name='测试' ";
IQuery query = _session.CreateQuery(hsql);
query.List();

在执行时,没有引发异常,但是没有查询结果返回(它们应该根据条件c.name='测试'

这是NHibernate为hsql生成的sql:

select customer0_.CUSTOMER_NO as CUSTOMER1_, customer0_.CODE as CODE9_, customer0_.NAME as NAME9_, customer0_.STATUS as STATUS9_, customer0_.LAST_OPE RATOR_NO as LAST5_9_
from CUSTOMER customer0_ where (customer0_.NAME='????')

hsql中的中文字符“测试”变为“ ????” 在SQL中。

通过Nhibernate添加客户时,汉字保存成功。 这里的问题仅在我使用CreateQuery搜索文本时出现。 任何帮助将不胜感激。

您可以使用参数尝试吗?

String hsql = "from Customer c where c.name=:name";
IQuery query = _session.CreateQuery(hsql).SetString("name", "测试");
query.List();

Hibernate查询中的相关Unicode字符串

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM