当前位置: 首页 > 知识库问答 >
问题:

如何在生成构建时动态更改flyway sql脚本文件中的模式名称

伏业
2023-03-14

在我的项目中,有几个flyway迁移sql脚本文件。现在我的项目的数据库名称已经更改了,所以如果我要更改所有文件中的数据库名称,那么它将抛出这样的错误-

原因:javax.ejb.ejbException:org.flywaydb.core.api.flywayException:验证失败:迁移的迁移校验和不匹配2018.12.10.132421584->应用到数据库:988067673->本地解决:-1477366160

那么如何在不修改flyway sqlm脚本文件的情况下更改数据库名称呢?

共有1个答案

郝昊东
2023-03-14

您可以在循环中运行迁移,并通过在每次迁移中传递数据库来更改数据库,我知道这是一种性能较低的方法,但它应该可以工作。

 类似资料:
  • 我试图通过使用一个定制版本的gradle-release插件来模拟Android中的Maven release插件:https://github.com/townsfolk/gradle-release null 然而,生成的APK总是具有以前的版本(即1.0.0-Snapshot而不是1.0.0)。 版本号存储在gradle.properties中并正确更新,因此我假设我也需要更新数据模型中的版

  • 问题内容: 我正在尝试在Shell脚本中生成动态var名称,以在循环中如下处理一组具有不同名称的文件: 我期望输出: 但我得到了: 是否可以即时生成var名称? 问题答案: 您需要利用变量间接: 在Bash手册页的 “参数扩展”下: “如果参数的第一个字符是感叹号(!),则会引入变量间接级别。Bash使用从参数其余部分形成的变量的值作为变量的名称;然后对该变量进行扩展,然后在替换的其余部分中使用v

  • 问题内容: 假设我在SQL Server Management Studio中为某些表添加了新列。当我按保存时,有什么方法可以获取执行的更改脚本? 我要实现的是将相同的更改应用于其他数据库(出于调试目的,我们为每个开发人员都有一个单独的数据库)。 问题答案: 我假设您在MS SSMS中使用表设计器。 在设计器中进行更改,然后在点击之前,进入菜单并选择。

  • 我尝试用TypeScript将样式化的组件应用于我的React代码。 现在我的方法使用循环生成多个元素,每个元素的className由另一个方法动态生成。 现在我想对这个代码应用样式化组件,并根据处理多个样式,但我不知道如何指定条件,因为在代码中是动态的。 有人知道好主意吗?

  • 我在用Mybatis的春靴。我在一个映射器XML文件中有以下查询。 实际上,“anotherdatabase”在我的查询中是硬编码的,因为我不想只为这个查询添加另一个数据源。但是,我如何动态地创建这个“另一个数据库”名称(可能在某些属性文件中配置它),因为它可能在不同的部署环境中发生变化?

  • 问题内容: 我正在使用gradle为2个小型android应用程序创建不同的样式,我想知道是否可以针对我的不同样式在build.gradle的xml文件中编辑应用程序名称。 问题答案: 你是什么意思?清单中的应用程序包名称或启动器中显示的应用程序名称? 如果是前者,请执行以下操作: 也可以覆盖应用程序名称,但您必须提供风味叠加资源。 因此,创建以下文件: 在其中,只需覆盖包含您的应用程序名称的字符