Я пытаюсь создать хранимую процедуру в моей базе данных через LiquiBase.Я также попытался использовать тег endDelimiter
в наборе изменений, и, похоже, здесь ничего не работает.
Список изменений выглядит следующим образом:
<changeSet id="create-proc" context="common" author="adamstark" failOnError="true" runOnChange="true">
<sqlFile path="../stored_procs/proc.sql"
relativeToChangelogFile="true"
splitStatements="false"/>
<rollback>
DROP PROCEDURE IF EXISTS `proc`;
</rollback>
</changeSet>
SQL выглядит следующим образом:
DELIMITER $$
USE db$$
CREATE PROCEDURE `proc`()
BEGIN
Query 1
Query 2
END $$
Я проверил, что могу запустить процедуру создания sql из клиента MySQL, однако я продолжаю получать ошибки от liquibase, говоря следующее:
Ошибка: у вас естьошибка в вашем синтаксисе SQL;обратитесь к руководству, соответствующему вашей версии сервера MariaDB, чтобы узнать правильный синтаксис для использования рядом с 'DELIMITER $$
Как я уже говорил ранее, я попытался использовать свойство endDelimiter
, и мой оператор sql сразу же завершился неудачейв начале запроса независимо от того, есть ли у меня строка DELIMITER $$
.