我已经在我的spring boot应用程序的liquibase(changelog.xml)文件中创建了一个mysql事件。当我更改事件主体中的某些逻辑时,如果事件已经存在于db中,我想删除该事件。但是执行下面的drop语句会出现mysql语法错误。我应该如何处理此事件的更新?
<changeSet id="EVENT_ARCHIVE" author="jk" runOnChange="true">
<sql endDelimiter="|">
DROP EVENT IF EXISTS event_archive_rcs_message_log;
SET GLOBAL event_scheduler="ON";
|
CREATE EVENT IF NOT EXISTS event_archive
ON SCHEDULE EVERY 7 DAY
STARTS CURRENT_TIMESTAMP
DO
some queries...!
End |
</sql>
</changeSet>发布于 2021-04-21 15:02:52
必须在整个脚本中使用指定的分隔符,而不是默认的分隔符:
<changeSet id="EVENT_ARCHIVE" author="jk" runOnChange="true">
<sql endDelimiter="|">
DROP EVENT IF EXISTS event_archive_rcs_message_log |
SET GLOBAL event_scheduler="ON" |
CREATE EVENT IF NOT EXISTS event_archive
ON SCHEDULE EVERY 7 DAY
STARTS CURRENT_TIMESTAMP
DO
-- some queries with ';' as delimiter
End |
</sql>
</changeSet>https://stackoverflow.com/questions/67190733
复制相似问题