Re: Prepared statement with function as argument: how to bind values? - Mailing list pgsql-jdbc

From David Johnston
Subject Re: Prepared statement with function as argument: how to bind values?
Date
Msg-id 1395731623187-5797359.post@n5.nabble.com
Whole thread Raw
In response to Re: Prepared statement with function as argument: how to bind values?  (David Johnston <polobo@yahoo.com>)
List 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 by date:

Previous
From: David Johnston
Date:
Subject: Re: Prepared statement with function as argument: how to bind values?
Next
From: Sivakumar
Date:
Subject: Re: Prepared statement with function as argument: how to bind values?