db 中“endDelimiter:@”的用法是什么(在我的例子中是 liquibase)

nik*_*103 3 delimiter liquibase

我刚刚开始使用 liquibase,并在其中一个变更日志中遇到了这一行:

--changeset NAME.SURNAME:1 endDelimiter:@ rollbackEndDelimiter:@
Run Code Online (Sandbox Code Playgroud)

的用法是什么"endDelimiter:@"。我认为它取代了默认的结束分隔符(定义行尾的字符),但";"为什么呢?

抱歉,如果我的问题格式不正确,这是我的第一个问题:)

小智 7

如果变更集包含 SQL,例如创建存储过程(或函数),其中代码本身包含 来;分隔过程内的语句,则使用结束分隔符。

如果 Liquibase 使用不完整的 DDL 语句拆分代码,;则会将其发送到数据库。因此,您需要有一个不同的分隔符来标记例如语句的结束CREATE PROCEDURE