Предложение Postgres SQL и setArray()JAVA

Программисты JAVA общаются здесь
Anonymous
Предложение Postgres SQL и setArray()

Сообщение Anonymous »

Я использую Java 1.7, JDBC 4 и Postgres. Я пытаюсь использовать ReadedStatement с массивом для заполнения предложения SQL. Но сгенерированный SQL, похоже, содержит «{» и «}». Вот код:

Код: Выделить всё

PreparedStatement ptmt =
connection.prepareStatement("select * from foo where id in (?)");
String[] values = new String[3];
values[0] = "a";
values[1] = "b";
values[2] = "c";
ptmt.setArray(1, connection.createArrayOf("text", values));
Результирующий SQL-код выглядит следующим образом:

Код: Выделить всё

select * from foo where id in ('{"a","b","c"}')
Это не сработает. Вот как это должно выглядеть:

Код: Выделить всё

select * from foo where id in ("a","b","c")
или

Код: Выделить всё

select * from foo where id in ('a','b','c')
Что мне здесь не хватает?

Подробнее здесь: https://stackoverflow.com/questions/166 ... d-setarray

Вернуться в «JAVA»