【问题标题】:Liquibase's sqlFile command being ignored for SQL serverSQL Server 忽略 Liquibase 的 sqlFile 命令
【发布时间】:2017-10-16 14:50:03
【问题描述】:

我正在尝试在我的变更日志中使用 liquibase 的 sqlFile 命令。 我的 yaml 文件中有以下内容:

  - changeSet:
      id: 2
      author: marios
      changes:
          - sqlFile:
              dbms: sql server, h2
              encoding: utf8
              endDelimiter: \nGO
              path: script.sql
              relativeToChangelogFile: true
              splitStatements: true
              stripComments: true

这里发生的是:

  • 变更集编号 1(上面未显示)包括创建/插入 liquibase 语句,并且正在 h2 和 sql server 上执行

  • 变更集 2 仅尝试执行提供的 sql 文件。

  • changeset 2 正在 h2 上执行,但在 sql server 的情况下被忽略

我可以看到说明脚本在 H2 上成功运行的日志,但在 SQL Server 的情况下,我可以看到变更集 2 在 2 毫秒内执行(我理解为:我看到了变更集 2,但我不明白是什么这样做我会忽略它)

问题是,如果我将“sql server”替换为“whatever”之类的内容,我仍然会得到相同的结果,这让我认为我没有使用正确的词来要求 liquibase 运行SQL Server 上的脚本。

我认为正确的措辞是documentation 中所述的“sql server”,但这似乎不起作用。

有什么想法吗?

【问题讨论】:

    标签: sql-server database h2 liquibase


    【解决方案1】:

    解决了。 根据this,MS SQL Server 的正确语法是 'mssql'

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-23
      • 2015-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-15
      • 1970-01-01
      相关资源
      最近更新 更多