【发布时间】:2016-05-26 09:04:46
【问题描述】:
我想对一个 h2 数据库进行逆向工程:
roo 建议使用两个可用架构 INFORMATION_SCHEMA 和 PUBLIC,但使用它们会导致错误“架构 'PUBLIC' 不存在或没有任何表...”
Roo 版本:1.3.2
有什么想法吗?提前致谢。
编辑 1: log.roo 的输出:
// Spring Roo 1.3.2.RELEASE [rev 8387857] log opened at 2016-05-26 09:04:31
project --topLevelPackage de.max.test
persistence setup --database H2_IN_MEMORY --provider HIBERNATE
// [failed] database introspect --schema unable-to-obtain-connection
osgi start --url file:///C:/Users/max/Downloads/h2/h2-1.4.191.jar
database introspect --schema PUBLIC
database introspect --schema INFORMATION_SCHEMA
database introspect --schema no-schema-required
database reverse engineer --schema PUBLIC
database.properties:
#Updated at Thu May 26 10:25:51 CEST 2016
#Thu May 26 10:25:51 CEST 2016
database.driverClassName=org.h2.Driver
database.url=jdbc\:h2\:mem\:test;DB_CLOSE_DELAY\=-1
database.username=sa
database.password=
由于 roo 检测到两个方案 INFORMATION_SCHEMA 和 PUBLIC,因此建立连接似乎有效。
【问题讨论】:
-
您能否更新您的答案以提供一个
log.roo文件,其中包含已执行的命令以及能够重现您的问题的所有必要步骤和配置?问候, -
似乎 Spring Roo shell 没有与您的数据库建立连接。尝试在 H2 shell 上使用
CREATE SCHEMA语句创建一个新模式。然后,使用“CREATE TABLE SCHEMANAME.TABLENAME(testname varchar(10))”将新表添加到该模式。现在,如果您使用database introspectroo 命令向您显示新创建的架构?
标签: spring reverse-engineering h2 spring-roo