Liquibase error: unterminated dollar-quoted string at or near "$BODY$`
Chaneg log xml has one entry: see below include file="/home/dev/....../admin_script.sql"
content of the file:
...............
CREATE OR REPLACE FUNCTION my_schema.function-name()
RETURNS smallint AS
$BODY$
DECLARE
v_next_gen_id smallint := 0;
BEGIN
..........
Exception:
liquibase.exception.DatabaseException: Error executing SQL CREATE OR REPLACE FUNCTION function name() ETURNS smallint AS $BODY$ DECLARE v_next_gen_id smallint := 0: ERROR: unterminated dollar-quoted string at or near "$BODY$
Appreciate any help to resolve this
Use
<createProcedure>
tag instead of<sql>
in your<changeSet>
definitionI just encountered the same issue days ago.
It does not work if we add the changeset into changelog.xml file using the format below:
<include file="path/to/sqlfile" />
To work around, I use another format:
Here is the link which gives a brief explanation to Problem with dollar-quoted-in-postgresql.