"endDelimiter" działa idealnie.
Średnik w instrukcji SQL oznacza "błędny znak", więc musisz go usunąć, gdy nie jest separatorem.(Tak, działa w PL/SQL i SQL*Plus, podobnie jak ukośnik "/", więcej :Kiedy muszę używać średnika czy ukośnika w Oracle SQL? )
Rozwiązania:
-
endDelimiter ="/"
<changeSet id="1" author="me"> <sql endDelimiter="/"> BEGIN aud.someProcedure('parameter'); END; / insert into test_table(_id, value) VALUES(1, 'test') </sql> </changeSet>
-
dwie sekcje
<changeSet id="1" author="me"> <sql endDelimiter="/"> BEGIN aud.someProcedure('parameter'); END; </sql> <sql> insert into test_table(_id, value) VALUES(1, 'test'); </sql> </changeSet>
-
a może;)
<changeSet id="1" author="me"> <sql endDelimiter="#Gabor was here#"> BEGIN aud.someProcedure('parameter'); END; #Gabor was here# insert into test_table(_id, value) VALUES(1, 'test') </sql> </changeSet>