gpt4 book ai didi

hibernate - 来自 grails 的带有 javaDB 和 Hibernate 的用户表

转载 作者:行者123 更新时间:2023-12-03 07:55:50 25 4
gpt4 key购买 nike

让我们看看我是否可以以一种可以理解的方式提出这个问题......

我从 grails 开始,创建了一个名为 user 的域类。据我了解,Hibernate 是用来将这个域类映射到数据库的。这对 hsqldb 非常有效。

现在我尝试切换到 javaDB 并收到一条错误消息,因为该表名为“user”(这似乎是 javaDB 的保留字)。

所以像这样的声明

create table user ...

将导致错误消息。
create table "user" ...

有效,但 Hibernate 似乎没有将表名放在引号中。

如何将 Hibernate 配置为使用引号以使其与我的表名一起使用?

PS:是的,我知道,我可以将域类映射到另一个表名... :-)

最佳答案

您是否尝试包装 table带双引号的名称:

class User {
..
static mapping = {
table '"user"'
}
}

更新:这样做的后果之一是您也必须使用 joinTable 自定义连接表的名称。关键词。这听起来很合理,但约定是 Grails 的好处之一,不依赖它们在某种程度上违背了它的理念。我个人会避免在这里使用保留字(即不是 user )。

关于hibernate - 来自 grails 的带有 javaDB 和 Hibernate 的用户表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2651462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com