【发布时间】:2014-11-19 16:20:06
【问题描述】:
我正在尝试使用 Flyway 迁移内存中的 h2 数据库。以传统方式创建表可以正常工作,但我也想使用 h2 的导入 csv,如 here 所述。我在 Flyway 文档中找不到任何说明这不起作用的内容。支持吗?
更新:这是我正在尝试迁移的 V02__createTables.sql。该脚本位于 db.migration.test 中,Flyway 知道该目录。 csv 文件 an_products.csv 也在这个文件夹中,因此被下面的 h2 的 CSVREAD 方法引用。
CREATE TABLE an_products (
id int(10) PRIMARY KEY NOT NULL,
name varchar(100) NOT NULL DEFAULT '',
price double NOT NULL DEFAULT '0.00',
taxable tinyint(4) NOT NULL DEFAULT '0',
notes varchar(255) DEFAULT NULL,
isPercent tinyint(3) NOT NULL DEFAULT '0',
min double DEFAULT NULL,
period char(1) NOT NULL DEFAULT '',
qty int(10) NOT NULL DEFAULT '0',
cost double NOT NULL DEFAULT '0.00'
) AS SELECT * FROM CSVREAD('an_products.csv');
【问题讨论】:
-
我已经删除了无用的堆栈跟踪。我想我会提供它以防万一我被要求提供堆栈跟踪。
-
我真的很想知道flyway是否支持这个。我参考了一个示例,该示例使用了我在失败的脚本中使用的语法。