我正在尝试在Liquibase 3.1.1
中为SQL格式的变更集添加前置条件- onconditions onFail = HALT onError = HALT --precondition -sql-check expectedResult = 0 SELECT COUNT(*)FROM USER_ERRORS WHERE TYPE ='PROCEDURE' --changeset myteam:101 runAlways:true
当我运行状态时,Liquibase会引发此错误:
Liquibase状态失败:无法从'expectedResult = 0 SELECT COUNT(*)FROM USER_ERRORS WHERE TYPE ='解析SqlCheck前置条件 PROCEDURE ''。
该前提条件语法出了什么问题?
答案 0 :(得分:1)
在“expectedResult”之后需要有一个冒号而不是一个等号char。
所以该行应该是:
--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM USER_ERRORS WHERE TYPE = 'PROCEDURE'
然后它应该工作。
编辑: (文档已更新。请参阅Nathans评论。)
Formatted SQL Changelogs的liquibase文档也有错误。