Как вызвать хранимую процедуру Oracle через XML-файл файла журнала изменений
Я использую следующий синтаксис в файле Changelog
<changeSet author="demouser" id="demochangeset333" dbms="oracle">
<sql>CALL LiquiInsert('ABC','1.0.3.4','ABC');</sql>
</changeSet>
Он получает вызов из sqlplus, который находится за пределами liquibase, но выдает ошибку
ORA-06576: неверный сеанс имени функции или процедуры изменен правильно
Это прекрасно работает снаружи.
Открыт для предложений..
Процедура состоит только из insert
заявление - больше ничего...
2 ответа
Попробуй это:
<changeSet author="demouser" id="demochangeset333" dbms="oracle">
<sql>
begin
execute LiquiInsert('ABC','1.0.3.4','ABC');
end;
</sql>
</changeSet>
Использовать
<sqlFile
path=“xxx.sql”
relativeToChangelogFile=“true”
stripComments=“true”
splitStatements=“false”
endDelimiter=“/”
dbms=“oracle”
/>
и файл .sql должен иметь
BEGIN
package.function();
END;
/