JPA использует позиционные параметры в собственном запросе с вопросительными знаками в поле

Мне нужно выполнить собственный запрос SQL (моя БД - Postgresql), прочитанный из файла:

INSERT INTO mytable(name, jsonvalue, idapp) SELECT 'rowname', $a$this is a json string and it contains ..."template":"#= myfield != null ? myfield.text : ''#"...$a$, ?1 WHERE NOT EXISTS (SELECT 1 FROM mytable where name = 'rowname' and idapp= (SELECT id FROM application where codapp = 'MYAPP'));

Система работает нормально, пока у меня нет знака вопроса внутри значения:

Call: INSERT INTO cfgutenti(nomecfg, configuration, ins_time, ins_user, status, upd_time, upd_user, idapp, idutente) SELECT 'name', $a$my value with ? ? ? three question marks  $a$, ...;
bind => [1, null, null, 1]
Internal Exception: org.postgresql.util.PSQLException: Indice di colonna, 2, è maggiore del numero di colonne 1.

В этом конкретном запросе у меня есть 4 знака вопроса, 3 в поле конфигурации и 1 - позиционный параметр.

Есть способ выполнить запрос с позиционным параметром и знаком вопроса?

РЕДАКТИРОВАТЬ: есть проблема, даже если я не использую параметр, но у меня есть вопросительный знак.

0 ответов

Другие вопросы по тегам