flyway.initSql 中的多个 SQL 语句

Multiple SQL statements in flyway.initSql

这样的事情是否可能,如果是,是否在每次建立连接时都执行 initSql?例如,我想确保在每个连接上都将时区设置为 UTC。或者是否有更好的方法来执行 connection-init-sql 语句?

flyway:
  datasources:
      default:
          initSql: SET ROLE test_role; SET time zone 'UTC'; <--- is this second statement executed?

谢谢!

是的,initsql支持多语句。它是 运行“to initialize a new database connection immediately after opening it”,所以是的,每次建立连接时它都是 运行。

例如,针对测试 SQL 服务器数据库,我 运行:

flyway -initSql="select 1; select 2" info

这输出了flyway info的正常内容,但在通常的连接信息之后还包括以下内容header: