По какой-то причине это продолжает появляться, когда я пытаюсь выполнить тест, который инициализирует базу данных и таблицы. Я использую Spring 4.1.2.RELEASE.
При попытке создать триггер:
Caused by: java.sql.SQLException: Unexpected end of command: REFERENCING
Код для триггера:
CREATE TRIGGER subscriber_created_at BEFORE INSERT ON subscriber
REFERENCING new ROW AS newrow
FOR EACH ROW BEGIN ATOMIC
IF newrow.dateCreated IS NULL
THEN SET newrow.dateCreated = NOW();
END IF;
END;/;
Затем, после поиска SO, если я нашел эту ссылку, в которой рассказывается, как ее исправил OP, и просто для тестирования, чтобы увидеть, могу ли я получить другую ошибку, он попробовал код OP и получил ту же ошибку.
Код процедуры:
CREATE PROCEDURE p_recordTaskExecution(IN userTaskId BIGINT,
IN isSuccess BOOLEAN,
IN statusMessage VARCHAR(2000),
IN operationsPerformed BIGINT,
INOUT procedureStatus BOOLEAN) BEGIN ATOMIC
IF userTaskId = 1 Then
SET procedureStatus = true;
ELSE
SET procedureStatus = false;
END IF;
END; /;
При попытке создать процедуру:
Caused by: java.sql.SQLException: Unexpected token: PROCEDURE in statement [CREATE PROCEDURE]
И для тестирования я отредактировал свой код в xml, чтобы обрезать команду, когда она достигает слова «подписчик»:
<jdbc:script location="classpath:/input_data/createTriggers.sql" separator="subscriber" />
И оно отрезало! Ошибка, которую я получил, была:
Unexpected token: in statement [CREATE TRIGGER ]
Я действительно озадачен. кто-нибудь еще сталкивался с этим?