У меня есть оператор SQL, который выглядит следующим образом: SELECT * FROM VAL WHERE VAL_VALUTA >= CHF ORDER BY VAL_VALUTA ASC LIMIT 10. Этот оператор работает нормально, и теперь я пытаюсь использовать его в Java с ReadedStatement со следующим кодом (я пропустил блоки соединения и try)
Код: Выделить всё
String sqlQuery = "SELECT * FROM VAL WHERE VAL_VALUTA ? ? ORDER BY VAL_VALUTA ASC LIMIT ?";
PreparedStatement statement = connection.prepareStatement(sqlQuery);
statement.setString(1, searchDirection);
statement.setString(2, currencyCode);
statement.setInt(3, numberOfCurrenciesReturned);
Когда я печатаю оператор, я получаю следующий вывод в консоли:
Код: Выделить всё
sql : 'SELECT * FROM VAL WHERE VAL_VALUTA ? ? ORDER BY VAL_VALUTA ASC LIMIT ?', parameters : ['>=','CHF',5]
Все выглядит нормально, но ничего не возвращает. Если я жестко запрограммирую >= в sqlQuery, то все будет работать нормально, но я предпочитаю этого не делать, так как мне нужно изменить его для разных условий на
Подробнее здесь:
https://stackoverflow.com/questions/417 ... nt-in-java