Re: JDBC and the hstore ? operator - no longer working with build1211
От | Thomas Kellerer |
---|---|
Тема | Re: JDBC and the hstore ? operator - no longer working with build1211 |
Дата | |
Msg-id | o98mjn$dre$1@blaine.gmane.org обсуждение исходный текст |
Ответ на | Re: JDBC and the hstore ? operator - no longer working with build 1211 (Vladimir Sitnikov <sitnikov.vladimir@gmail.com>) |
Ответы |
Re: Re: JDBC and the hstore ? operator - no longer workingwith build 1211
|
Список | pgsql-jdbc |
Vladimir Sitnikov schrieb am 01.11.2016 um 15:00: >>This has been "broken" for a while now, you have to use ?? to get it to work. This still doesn't work completely with a PreparedStatement. Other hstore operators that start with an ? do not work: ?& and ?| e.g.: connection.prepareStatement("select * from foo where hstore_column ?& array['key']"); connection.prepareStatement("select * from foo where hstore_column ?| array['key']"); The prepareStatement() call succeeds, but when calling executeQuery() an exception is thrown: org.postgresql.util.PSQLException: No value specified for parameter 1. The goal is to pass the array as a parameter, something like: Array keys = con.createArrayOf("text", new String[] {"key1","key2"}); connection.prepareStatement("select * from foo where hstore_column ?& ?"); pstmt.setArray(1, keys); ResultSet rs = pstmt.executeQuery(); Tested with 1212 and 42.0.0 Regards Thomas
В списке pgsql-jdbc по дате отправления: