Re: Prepared statement with function as argument: how to bind values?

Поиск
Список
Период
Сортировка
От David Johnston
Тема Re: Prepared statement with function as argument: how to bind values?
Дата
Msg-id 1395731623187-5797359.post@n5.nabble.com
обсуждение исходный текст
Ответ на Re: Prepared statement with function as argument: how to bind values?  (David Johnston <polobo@yahoo.com>)
Список pgsql-jdbc
David Johnston wrote
>
> Sivakumar wrote
>> I think it's too late to respond for this issue, but i hope it will be
>> useful for someone else. I also faced the same issue of binding, how i
>> solved is
>>
>>
>> String sql = "INSERT INTO
>> poi(geom,latitude,longitude,description,comment) VALUES
>> (
*
>> ST_GeomFromText(?, 4326)
*
>> , ?, ?, ?, ?)";
>> stmt = conn.prepareStatement(sql);
*
>> stmt.setString(1, "POINT(" +lon + " " + lat + ")");
*
>> stmt.setFloat(2, lon);
>> stmt.setFloat(3, lat);
>> stmt.setTimestamp(4, descr);
>> stmt.setString(5, comment);
>>
>> Thanks,
>> Sivakumar
> Doesn't seem that much an improvement over dynamic SQL.
>
> INSERT INTO ...
> SELECT func_outer(func_inner(val1, val2), 4326), val3
> FROM (VALUES (?,?,?)) src (val1,val2,val3);
>
> David J.

I take the editorializing back...

Reading again since the call is expecting a text for the geom then
concatenating together a string seems like a necessary requirement of the
solution.

That said the use of select and values together is something that can be
useful.

David J.




--
View this message in context:
http://postgresql.1045698.n5.nabble.com/Prepared-statement-with-function-as-argument-how-to-bind-values-tp4833351p5797359.html
Sent from the PostgreSQL - jdbc mailing list archive at Nabble.com.


В списке pgsql-jdbc по дате отправления:

Предыдущее
От: David Johnston
Дата:
Сообщение: Re: Prepared statement with function as argument: how to bind values?
Следующее
От: Sivakumar
Дата:
Сообщение: Re: Prepared statement with function as argument: how to bind values?