我正在尝试将所有junit测试切换到hsqldb(真正的db是oracle)。当我尝试映射包含以下内容的.hbm.xml文件时出现问题:
<property name="begin" type="integer" column="BEGIN" /> <property name="end" type="integer" column="END" />
现在在mem db build期间,我收到了这个信息:
ERROR - Unsuccessful: create table BLOCKTIME (ID bigint not null, BEGIN integer, END integer, TIMEZONE varchar(255), primary key (ID)) ERROR - Unexpected token: END in statement [create table BLOCKTIME (ID bigint not null, BEGIN integer, END]
问题似乎是将mssql作为关键字限制的BEGIN和END表名。
知道如何省略这个问题吗?
谢谢, 马立克。
答案 0 :(得分:1)
您可以转义列名:
<property name="begin" type="integer" >
<column name="[begin]" />
</property>
或者
<property name="begin" type="integer" >
<column name='"begin"' />
</property>