我无法使用flyway和maven插件初始化和迁移HSQLDB数据库。
我在我的pom.xml中有这块XML:
com.googlecode.flyway
flyway-maven-plugin
1.5
org.hsqldb.jdbcDriver
jdbc:hsqldb:file:${project.build.directory}/db/margarita;shutdown=true
develop
margarita
118
Base Migration
org.hsqldb
hsqldb
2.2.8
当我运行这个命令时:
mvn flyway:migrate我收到此错误消息:
[INFO] --- flyway-maven-plugin:1.5:migrate (default-cli) @ Margarita ---
[INFO] Database closed
[INFO] Hsql does not support locking. No concurrent migration supported.
[INFO] Database closed
[ERROR] com.googlecode.flyway.core.exception.FlywayException: Error executing statement at line 17: CREATE TABLE MARGARITA.schema_history (
version VARCHAR(20) PRIMARY KEY,
description VARCHAR(100),
type VARCHAR(10) NOT NULL,
script VARCHAR(200) NOT NULL,
checksum INT,
installed_by VARCHAR(30) NOT NULL,
installed_on TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
execution_time INT,
state VARCHAR(15) NOT NULL,
current_version BIT NOT NULL,
CONSTRAINT MARGARITA.schema_history_script_unique UNIQUE (script)
)
[ERROR] Caused by org.hsqldb.HsqlException: invalid schema name: MARGARITA
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.550s
[INFO] Finished at: Tue Mar 20 21:54:06 EDT 2012
[INFO] Final Memory: 6M/81M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.googlecode.flyway:flyway-maven-plugin:1.5:migrate (default-cli) on project Margarita: Flyway Error: com.googlecode.flyway.core.exception.FlywayException: Error executing statement at line 17: CREATE TABLE MARGARITA.schema_history (
[ERROR] version VARCHAR(20) PRIMARY KEY,
[ERROR] description VARCHAR(100),
[ERROR] type VARCHAR(10) NOT NULL,
[ERROR] script VARCHAR(200) NOT NULL,
[ERROR] checksum INT,
[ERROR] installed_by VARCHAR(30) NOT NULL,
[ERROR] installed_on TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
[ERROR] execution_time INT,
[ERROR] state VARCHAR(15) NOT NULL,
[ERROR] current_version BIT NOT NULL,
[ERROR] CONSTRAINT MARGARITA.schema_history_script_unique UNIQUE (script)
[ERROR] ): StatementCallback; uncategorized SQLException for SQL [CREATE TABLE MARGARITA.schema_history (
[ERROR] version VARCHAR(20) PRIMARY KEY,
[ERROR] description VARCHAR(100),
[ERROR] type VARCHAR(10) NOT NULL,
[ERROR] script VARCHAR(200) NOT NULL,
[ERROR] checksum INT,
[ERROR] installed_by VARCHAR(30) NOT NULL,
[ERROR] installed_on TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
[ERROR] execution_time INT,
[ERROR] state VARCHAR(15) NOT NULL,
[ERROR] current_version BIT NOT NULL,
[ERROR] CONSTRAINT MARGARITA.schema_history_script_unique UNIQUE (script)
[ERROR] )]; SQL state [3F000]; error code [-4850]; invalid schema name: MARGARITA; nested exception is java.sql.SQLException: invalid schema name: MARGARITA
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException这不是一个受支持的过程吗?我认为hsqldb会自动创建引用的模式,所以我很困惑。