2017-08-10 55 views
0

我们已将flyway与Redshift集成,我们将此用作简单的Java主程序来运行我们所有的模式迁移。我们也使用info命令来打印当前版本的数据库,但是这个命令成功运行或至少看起来运行但不打印版本号。 我们有版本4.2的飞路罐。我们可能错过了什么?由于Flyway数据库迁移工具信息选项不打印版本号

回答

1

手动重新创建什么info command line option并在Java代码中,你可以复制它的实现做了什么(从source):

MigrationInfoDumper.dumpToAsciiTable(flyway.info().all())

一个例子从文档如下所示:

+-------------+------------------------+---------------------+---------+ 
| Version  | Description   | Installed on  | State | 
+-------------+------------------------+---------------------+---------+ 
| 1   | Initial structure  |      | Pending | 
| 1.1   | Populate table   |      | Pending | 
| 1.3   | And his brother  |      | Pending | 
+-------------+------------------------+---------------------+---------+ 
+0

我从我的java主程序运行flyway的信息命令,我期望从元数据表的输出,但我没有看到任何结果,也没有任何错误消息。 –

+0

谢谢澄清;您正在通过Java API运行。要查看版本信息,请尝试模拟命令行信息命令的功能(来自[source](https://github.com/flyway/flyway/blob/master/flyway-commandline/src/main/java/org/flywaydb/ commandline/Main.java#L176)): 'MigrationInfoDumper.dumpToAsciiTable(flyway.info()。all())' –

+0

感谢Harnish Carpenter。你上面的建议工作!再次感谢您的帮助。 –