On Fri, Nov 14, 2003 at 05:05:46PM +0100, Jan Klostermann wrote:
>
> I would like to know, if there exists a way in PostgreSQL to insert data
> not exclusively via the SQL-query-string but using a direct data
> interface, thus avoiding parsing the data into string and then back into
> binary data representation (e.g. Double).
You could use binary cursors.
> What I would like to use is a query like this: INSERT INTO table
> (number1, number2) VALUES (?,?)
> Before executing the query the command structure would be fill with the
> parameters for the 2 values (e.g. 3.33 and 5.555) and then there would
> follow the execution, where the query parser would replace the "?" with
> the current data of the parameters and execute the appopriate query.
Wouldn't it be easier in this case to skip the SQL altogether and just
use the COPY command to pump data into the table with minimal processing?
You'd still go through the parsing, but that may end up saving you trouble
anyway if you ever need to run the server and the client on different
machines--and I wouldn't be surprised if going through SQL is costing you
more than the value parsing anyway.
From what I've heard, COPY (or tablewriter if you use libpqxx) is much
faster than SQL INSERT.
Jeroen