db中“ endDelimiter:@”的用法是什么(在我的情况下是liquibase)

时间:2018-08-20 08:35:06

标签: delimiter liquibase

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

--changeset NAME.SURNAME:1 endDelimiter:@ rollbackEndDelimiter:@

"endDelimiter:@". I think it replaces the default end-delimiter (character that defines end of line) which is ";"的用途是什么?

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

1 个答案:

答案 0 :(得分:1)

如果变更集包含SQL(例如,创建一个存储过程(或函数),其中代码本身包含一个;以分隔过程中的 语句。

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