在NHibernate中转义列名中的问号字符

时间:2011-04-27 14:19:44

标签: nhibernate nhibernate-mapping hql

我有一个实体,其属性的列名包含问号。如何映射列名,以便HQL查询将正确生成SQL,并适当地包装列名(即SQL Server的[]),而不是用参数替换问号?我尝试用反引号或方括号包装列名,但这不起作用。

1 个答案:

答案 0 :(得分:2)

Backticks对我来说很好。请记住仅在映射文件中使用它们,而不是在HQL中使用它们:

<property name="Data1" column="`Data1?`" />

此查询:

session.CreateQuery("select Data1 from Foo").List();

此SQL中的结果:

select foo0_.[Data1?] as col_0_0_
from Foo foo0_

更新:这是NHibernate 3.1中的一个错误。 Jira issue created