Thread: how to use COPY within plperl

how to use COPY within plperl

From
Marek Lewczuk
Date:
Hello,
I need to use COPY (instead of INSERT) within plperl function. I know
that COPY will work if data will be taken from file - however I need to
use STDIN. I tried this:
spi_exec_query("COPY sometable (field1, field2) FROM
stdin;"."\n"."sometext"."\t"."sometext"."\n"."\.")

But it didn't work. Thanks in advance.



Re: how to use COPY within plperl

From
"Goutam Paruchuri"
Date:
Why can you not use simple insert statements (sql insert).
Copy is meant to transfer large amount of data from text files to
databases and vice versa.

- Goutam



> -----Original Message-----
> From: pgsql-general-owner@postgresql.org
> [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Marek Lewczuk
> Sent: Monday, November 08, 2004 3:59 AM
> To: Lista dyskusyjna pgsql-general; Lista dyskusyjna pgsql-sql
> Subject: [GENERAL] how to use COPY within plperl
>
>
> Hello,
> I need to use COPY (instead of INSERT) within plperl
> function. I know that COPY will work if data will be taken
> from file - however I need to use STDIN. I tried this:
> spi_exec_query("COPY sometable (field1, field2) FROM
> stdin;"."\n"."sometext"."\t"."sometext"."\n"."\.")
>
> But it didn't work. Thanks in advance.
>
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index
> scan if your
>       joining column's datatypes do not match
>


Confidentiality Notice
The information contained in this e-mail is confidential and intended for use only by the person(s) or organization
listedin the address. If you have received this communication in error, please contact the sender at O'Neil &
Associates,Inc., immediately. Any copying, dissemination, or distribution of this communication, other than by the
intendedrecipient, is strictly prohibited. 


Re: how to use COPY within plperl

From
Marek Lewczuk
Date:
Goutam Paruchuri wrote:
> Why can you not use simple insert statements (sql insert).
> Copy is meant to transfer large amount of data from text files to
> databases and vice versa.
"Insert" is much slower if there are many (hundreds, thousands) data to
be inserted - and in my case there will be thousands of inserts made by
plperl. I can make a file with the data (and load using COPY), but it
would be better to use copy from stdin.

Thanks

ML