hibernate - 在内存数据库(HSQLDB或H2)上使用多个架构域运行grails

标签 hibernate grails schema hsqldb h2

在我的Grails 1.3.7应用程序中,我将域映射到旧的oracle数据库。在此基础上,我使用GORM映射了多个架构到我的域。它很复杂,但是有效。

我现在正在尝试创建一个不依赖于oracle数据库的环境,以便前端团队可以从公司外部运行该应用程序。它们已外包。因此,我考虑过创建一个新的grails环境,将数据源指向HSQLDB并设置dbCreate =“create-drop”。

我遇到以下错误:

hbm2ddl.SchemaExport-无效的架构名称:语句[创建表APR.PLATAFORMA]中的APR

每次尝试在启动时创建表。

问题是我找不到一种方法来让休眠模式创建模式。我也尝试在starup上以编程方式创建模式,但是没有成功。我也尝试使用H2 INIT属性Can I have H2 autocreate a schema in an in-memory database?,但也没有成功。

有任何想法吗?

最佳答案

创建了一些bean后处理并入侵HSQLDialect之后,我意识到最好的解决方案是从域中删除模式信息。

最终这两个数据库(HSQLDB和H2)都存在唯一约束的问题。由于我的唯一约束是在只读类中定义的,因此我也不必费心删除它们。

该应用程序仍在使用oracle数据库,但现在我可以在内存数据库(我正在使用HSQLDB)中使用同一模式中的所有表来运行它。

关于hibernate - 在内存数据库(HSQLDB或H2)上使用多个架构域运行grails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15886889/

相关文章:

java - oracle关闭连接时如何抛出错误?

hibernate - 运行应用程序出现Grails 2.4和hibernate4错误

ruby-on-rails - 使用 git 流分支时的数据库问题(孤立迁移)

sql-server - TSQL 定义临时表(或表变量)而不定义架构?

java - 升级 2.2.1 到 2.3.6 后 Grails run-app 错误

python - 使用 Python 生成数据库架构

java - 当 @NotEmpty 用于返回类型时,hibernate validator 错误

java - 无法使用 Tomcat 5.5 和 Hibernate 连接到数据库

grails - 在grails中的Ajax调用期间, Spring 安全性中的 session 超时

json - 如何将 map 列表转换为常规的groovy/grails对象?