Когда я переношу функцию Oracle в HSQLDB, мне нужно перевести «Выбрать в» для HSQLDB. Скрипт Oracle может выглядеть так:
CREATE FUNCTION getId()
RETURN NUMBER IS
temp_id NUMBER;
...
BEGIN
....
SELECT id id INTO temp_id from ( select id form ..... );
В HSQLDB 2.0.0 я могу сделать следующее:
CREATE FUNCTION getId()
RETURNS BIGINT
BEGIN ATOMIC
DECLARE temp_id BIGINT;
....
SET temp_id = SELECT id id FROM ....
Однако он больше не работает в HSQLDB 2.2.9. Сообщение об ошибке:
[CREATE - 0 строк, 0,000 с] [Код ошибки: -5608, состояние SQL: 42608] неверное или отсутствующее предложение о влиянии данных в объявлении: READS SQL в выражении
В примечании к выпуску HSQLDB 2.2 говорится, что они уже поддерживают «выбрать в», но я не нашел способа.
Кто-нибудь знает, как это сделать в HSQLDB 2.2.9?