From: Tom Lane <tgl@sss.pgh.pa.us>
To: Aaron Held <aaron@metrony.com>
Cc: pgsql-sql@postgresql.org
Subject: Re: bulk imports with sequence
Date: Tue, 20 Aug 2002 10:53:45 -0400
Message-ID: <5846.1029855225@sss.pgh.pa.us> (raw)
In-Reply-To: <000b01c24840$7b5a0880$4b00a8c0@metrony.com>
References: <20020819094344.C31592-100000@megazone23.bigpanda.com>
<761958859.1029831297@sauron>
<000b01c24840$7b5a0880$4b00a8c0@metrony.com>
"Aaron Held" <aaron@metrony.com> writes:
> I am importing a large number of records monthly using the \copy (from text file)command.
> I would like to use a sequence as a unique row ID for display in my app.
> Is there any way to let postgresql generate the sequence itself. Currently the only way I
> can make it work is to grab the next seq value and insert my own numbers into the file
Right now the only reasonable way to do that is to do the \copy into a
temporary table (that's missing the sequence column) and then do
insert into realtable(column list) select * from temptable;
where the column list lists the columns you're pulling from the temp
table. The INSERT will substitute the default value (viz, nextval())
in the sequence column.
In 7.3 it'll be possible to do this in one step with no temp table:
COPY will accept a column list, so you can get the same effect just
with COPY.
regards, tom lane
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: tgl@sss.pgh.pa.us, aaron@metrony.com
Subject: Re: bulk imports with sequence
In-Reply-To: <5846.1029855225@sss.pgh.pa.us>
* 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