NHibernate中的命名查询不等于运算符
Posted
技术标签:
【中文标题】NHibernate中的命名查询不等于运算符【英文标题】:named query in NHibernate with not equal operator 【发布时间】:2016-11-14 16:00:05 【问题描述】:NHibernate 抛出异常,sql server 不等于运算符<>
。
<sql-query name="Select">
<return alias="OrderStock" class="OrderStock"/>
select * from OrderStock WHERE dh.DATE_UNLOADED <> '1753-01-01'
</sql-query>
名称不能以“>”字符开头
【问题讨论】:
您是否尝试将查询包装在<![CDATA[]]>
中?
不,我没试过
【参考方案1】:
我们可以像这样使用&lt;&gt;
转义符号<>
:
<sql-query name="Select">
<return alias="OrderStock" class="OrderStock"/>
select * from OrderStock WHERE dh.DATE_UNLOADED <> '1753-01-01'
</sql-query>
或者我们可以使用<![CDATA[ .... ]]>
的xml原始文本转义:
<sql-query name="Select">
<return alias="OrderStock" class="OrderStock"/>
<![CDATA[
select * from OrderStock WHERE dh.DATE_UNLOADED <> '1753-01-01'
]]>
</sql-query>
【讨论】:
以上是关于NHibernate中的命名查询不等于运算符的主要内容,如果未能解决你的问题,请参考以下文章
使用 PostgreSQL 和 NHibernate 的命名查询