3

我使用 H2/J2EE/Spring 应用程序,并使用 Flyway 更新生产服务器上的生产数据库 - 一切都很好。问题在于,将开发人员 H2 更改与生产 H2 合并总是非常复杂(即生成 flyway delta 脚本)。如何以任何方式以随后的历史方式跟踪所有数据库更改以生成这些 SQL 更改?(所有数据库更新都由管理前端完成)?

4

2 回答 2

0

所以没有人会分享你的知识——如何为我轻松地收集数据库数据和模式的变化?:) 因为我的临时解决方案是从他们的 SVN 中检出 h2(我的版本),并以下列方式修改 org.h2.message.TraceSystem java 类:

public void write(int level, String module, String s, Throwable t) {
    ...


            String s2 = s.toUpperCase();
            if (s2.indexOf("SELECT") != -1) {
                return; // :)
            }

            writeFile(format2(s2), t);

}

现在我至少能够抓住变化:)(使用 ConvertTraceFile for .trace.db )

于 2012-01-22T08:54:27.957 回答
0

您可以使用跟踪选项,然后使用ConvertTraceFile工具从跟踪文件创建 SQL 脚本。

于 2012-01-20T12:56:11.443 回答