Re: bulk insert using COPY and PHP code

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Babu R <babu_4blog(at)yahoo(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: bulk insert using COPY and PHP code
Date: 2010-07-02 17:42:26
Message-ID: AANLkTimlNbFEDRZSG8kESUURTuzwNUMKfMGwqmMkJwYu@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

2010/7/2 Babu R <babu_4blog(at)yahoo(dot)com>
>
> Hi Pavel,
>
> Thanks.
>
> The situation is, I have the DB class which will return the connection object that is created using the PDO class. And am using that object to perform the db operations. ie: $DB->prepare("")
>
> Further I have the data in a CSV file which has to be inserted into the table.
>
> Here is the command that I have used to import that data:
>
> $DB->exec("\COPY table1 FROM data.csv WITH DELIMITERS ','");

you cannot use \copy - this command is available only in psql. use just copy ...

pavel

>
> And this dosen't work, it throws an error "error near "\" char 1 along with the command
>
> But the same command works fine on the psql prompt.
>
> Thanks again,
> - Babu
>
> --- On Fri, 7/2/10, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> wrote:
>
> From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
> Subject: Re: [GENERAL] bulk insert using COPY and PHP code
> To: "Babu R" <babu_4blog(at)yahoo(dot)com>
> Cc: pgsql-general(at)postgresql(dot)org
> Date: Friday, July 2, 2010, 4:22 PM
>
> 2010/7/2 Babu R <babu_4blog(at)yahoo(dot)com>
> >
> > Hello,
> >
> > Am exploring a way for bulk insert using \COPY with the CSV format data using PHP code. Is there any way to achieve this?
> >
> > Thanks,
> > - Babu
> >
> hello
>
> look on http://php.net/manual/en/function.pg-put-line.php
>
>
> <?php
>   $conn = pg_pconnect("dbname=foo");
>   pg_query($conn, "create table bar (a int4, b char(16), d float8)");
>   pg_query($conn, "copy bar from stdin");
>   pg_put_line($conn, "3\thello world\t4.5\n");
>   pg_put_line($conn, "4\tgoodbye world\t7.11\n");
>   pg_put_line($conn, "\\.\n");
>   pg_end_copy($conn);
> ?>
>
> Regards
>
> Pavel Stehule
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Norberto Delle 2010-07-02 17:43:37 Re: Autovacuum and pg_largeobject
Previous Message Babu R 2010-07-02 17:28:23 Re: bulk insert using COPY and PHP code