使用JPA创建具有保留字名称的字段

@Column(name="open")

在hibernate状态下使用sqlserver方言。

[SchemaUpdate] Unsuccessful: create table auth_session (id numeric(19,0) identity not null, active tinyint null, creation_date datetime not null, last_modified datetime not null, maxidle int null, maxlive int null, open tinyint null, sessionid varchar(255) not null, user_id numeric(19,0) not null, primary key (id), unique (sessionid))

[SchemaUpdate] Incorrect syntax near the keyword 'open'.

我希望hibernate在创建表时使用带引号的标识符。

除了重命名字段外,还有其他任何处理方法的想法吗?

回答:

遇到相同的问题,但表名为Transaction。如果你设定

hibernate.globally_quoted_identifiers=true

然后所有数据库标识符将被引用。

在这里找到我的答案 表名称中的特殊字符hibernate给出错误

并在这里找到所有可用的设置 https://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/appendices/Configurations.html

虽然找不到更好的文档。

就我而言,该设置位于我的Spring属性文件中。如注释中所述,它也可以位于其他与hibernate相关的配置文件中。

以上是 使用JPA创建具有保留字名称的字段 的全部内容, 来源链接: utcz.com/qa/419140.html

回到顶部