【问题标题】:Spring roo reverse engineering: schema not recognizedSpring roo 逆向工程:无​​法识别架构
【发布时间】: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 introspect roo 命令向您显示新创建的架构?

标签: spring reverse-engineering h2 spring-roo


【解决方案1】:

感谢@jcgarcia。 确实没有建立连接。我将 database.url 更改为

database.url=jdbc:h2:~/test

这可行,但 roo 肯定可以通过声明无法建立连接来改进。

【讨论】:

猜你喜欢
  • 2012-06-22
  • 2012-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-03
  • 1970-01-01
  • 2014-09-21
相关资源
最近更新 更多