ORA-01465: неверное шестнадцатеричное число или ошибка несоответствия данных при использовании jibernate jpa и oracle in coalesce - PullRequest
0 голосов
/ 14 января 2019

В загрузке java spring, когда я использую функцию coalesce для поискового запроса с бэкэндом oracle, нулевые значения не обрабатываются должным образом. используя jpql, это либо дает мне RAW-- ORA-01465: неверный шестнадцатеричный номер или ошибка несоответствия данных, как ожидаемый двоичный файл, получил целое число

1 Ответ

0 голосов
/ 14 января 2019

Пожалуйста, обратитесь к документации COALESCE

Использование

COALESCE (expr1, expr2, ..., exprn)

и не вложено как в вашем примере

COALESCE (expr1, COALESCE (expr2,expr3))

Проверьте тип данных параметров связывания и столбцов базы данных, на которые ссылаются. Кажется, что некоторые из них не VARCHAR (возможно, числовой), что находится в конфликте со значением 'a'

Если вы хотите обработать все выражения в COALESCE как строки символов (которые я выводил из конструкции COALESCE(t.cId,'a')), вы должны явно преобразовать нестандартные строки, используя TO_CHAR.

По сути, вам нужно, чтобы все выражения в COALESCE в одном и том же типе данных или, по крайней мере, могли преобразовываться в тип данных, который определен первым параметром.

...