From: Oleg Samoylov <olleg@telecom.mipt.ru>
To: pgsql-sql@postgresql.org
Subject: Re: Insert multiple Rows
Date: Tue, 04 Mar 2003 13:54:40 +0300
Message-ID: <b420lg$1um4$1@news.hub.org> (raw)
In-Reply-To: <6f079210.0303030838.21f184af@posting.google.com>
References: <6f079210.0303030838.21f184af@posting.google.com>
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.
--
Olleg Samoylov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: olleg@telecom.mipt.ru
Subject: Re: Insert multiple Rows
In-Reply-To: <b420lg$1um4$1@news.hub.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox