Я пытаюсь выполнить один SQL, состоящий из переменных связывания. Он отлично работает с ORACLE DB, но не с DB2.
Вот пример SQL: (UPPER/UCASE это может быть что угодно)
SELECT Col1 FROM tab1 WHERE Col1 = 'abc' AND (UPPER(Col1) LIKE (UPPER(:1) || '%' ESCAPE '\') ORDER BY 1
Ошибка следующая:
db2 => SELECT Col1 FROM tab1 WHERE Col1 = 'abc' AND (UPPER(Col1) LIKE (UPPE
R(:1) || '%' ESCAPE '\') ORDER BY 1
SQL0104N An unexpected token "1" was found following "". Expected tokens mayinclude: "<IDENTIFIER>". SQLSTATE=42601
Я не уверен, в чем здесь проблема. Он не запрашивает ввод значения привязки. В Oracle DB все работает нормально.
В DB2 я использовал командную строку для выполнения запроса. Для Oracle я использовал разработчика ORACLE SQL.