Функция, которую вы вызываете в функции выбора (get_next_unlocked_id
), пытается изменить данные , что запрещено так, как вы это попробовали.
Проблема в том, что ваше решение, похоже, «запрашивает», в то время как фактически оно модифицирует данные. Я предполагаю, что ваша функция увеличивает счетчик или обновляет что-то? Полученный вами код ошибки ORA довольно нагляден, вот более подробное объяснение .
Решением в любом случае является использование CallableStatements из Java.