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

当移动现有数据库以使用flyway时,基线迁移是否需要包含所有现有表的DDL?

狄兴业
2023-03-14

我正在添加flyway来控制通过flyway对现有数据库的所有修改(删除人工联系)。我使用flyway的唯一目的是修改或添加表,也许还有一些数据插入(DML)。我想知道我的基线迁移脚本是否需要包含现有数据库的DDL?或者它可以是空的吗?我确实设置了baselineOnMigrate=true

共有1个答案

瞿博易
2023-03-14

只要您不需要可重复性,即能够将整个数据库(包括基线之前的所有内容)运送到另一个盒子,那么不,这不是必需的,但建议在此处说明。

 类似资料:
  • 我有一个由Ormlite实现的现有数据库。我正在尝试用Ormlite生成的现有sqlite文件迁移到Room。 当我们在ormlite中为表列使用long数据类型时,它在SQLite中被转换为BIGINT。因此,创建的模式包含BIGINT类型的列,而BIGINT类型对于Room是未知的。当我尝试用Room升级应用程序时,我遇到了迁移异常。 java.lang.IllegalStateExcepti

  • 在构建Room数据库之前,我尝试保留旧的SqliteOpenHelper并使用它从1升级到3。这在第一次运行时有效,但随后的运行会使SqliteOpenHelper崩溃,因为它不能降级数据库(Room成功升级到v4,但open helper只知道v3。使用它来确保升级到v3的数据库会导致它尝试降级)

  • 我正在尝试使用flyway,但是我有一个不知道如何解决的情况: 当我应用STANDARD脚本时,我必须运行V1.0__create_table_TAB1.sql当我将脚本应用到customer1时,TAB1表是一个视图,因此我必须运行V1.0__creaate_view_TAB1_to_schema1.sql。 实际: 应始终应用sql_common文件夹的脚本,但不应应用 V1.0(创建表 TA

  • 我正在flyway的CMD中运行命令,但脚本文件的迁移会出现以下异常 [错误]无法执行目标组织。flywaydb:flyway maven插件:3.2.1:在convertopia auto db:org项目上迁移(默认cli)。flywaydb。果心应用程序编程接口。FlywayException:验证失败。迁移1.0.53的迁移描述不匹配[错误]- 我尝试过,它说构建成功,但问题仍然没有解决。

  • 我用试用密钥尝试了State/BaselineMigration功能。https://flywaydb.org/documentation/concepts/baselinemigrationsFlyWay迁移执行脚本并正确移动到正确的版本。但在此基础上运行的所有迁移都失败了 从S开始2__xxx.sql然后它在版本2的模式表中创建一行并键入"SQL_STATE_SCRIPT" 再次执行flywa

  • 我在Laravel4.2项目中工作,现在我想在现有的表用户中添加列。现在我想添加另一列,当我运行migration命令时,我总是收到相同的消息“无需迁移”下面是我的迁移模式代码 我在终点站跑步 我还运行以下命令 但是当我运行上面的命令时,我收到以下错误 SQLSTATE[42S01]:基表或视图已经存在: 1050表'用户'已经存在