Re: Insert multiple Rows

From: Gary Stainburn <gary(dot)stainburn(at)ringways(dot)co(dot)uk>
To: Oleg Samoylov <olleg(at)telecom(dot)mipt(dot)ru>, pgsql-sql(at)postgresql(dot)org
Subject: Re: Insert multiple Rows
Date: 2003-03-04 11:19:30
Message-ID: 200303041119.30866.gary.stainburn@ringways.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Tuesday 04 Mar 2003 10:54 am, Oleg Samoylov wrote:
> Hi,
>
> Saint X wrote:
> > Hi, I have a program that need to send a Postgresql database a lot of
> > rows, i'm doing it using FOR an INSERT, something like this
> > for i = 0 to 1000
> > {
> > insert into table(item1) VALUES (i);
> > }
> >
> > And so on, as you can imagine these consume a lot of resources and
> > move so slowly, that's why I'm looking for a command to send more than
> > one row at the time, something like
> >
> > insert into table (item1) values ('1' / '2' / '3' / '4' ... / '1000');
>
> You can do instead:
>
> insert into table (item1) values ('1');
> insert into table (item1) values ('2');
> ....
> insert into table (item1) values ('1000');
>
> As single query.
>
> But better use COPY command or prepared statment.
>
> Inserts slow commonly due to indexis and foreing keys.

If you use a 'prepared' insert within a transaction, would that speed things
up - maybe by defering index updates?
--
Gary Stainburn

This email does not contain private or confidential material as it
may be snooped on by interested government parties for unknown
and undisclosed purposes - Regulation of Investigatory Powers Act, 2000

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Achilleus Mantzios 2003-03-04 11:42:13 Re: Gist indexes on int arrays
Previous Message Christoph Haller 2003-03-04 11:14:18 Re: using Avg()