Re: copy record?

From: "Gauthier, Dave" <dave(dot)gauthier(at)intel(dot)com>
To: "Gauthier, Dave" <dave(dot)gauthier(at)intel(dot)com>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: copy record?
Date: 2011-05-26 21:04:04
Message-ID: 482E80323A35A54498B8B70FF2B87980049413B673@azsmsx504.amr.corp.intel.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-sql

Well, I found a better way, but still open to suggestions.

This is what I have so far...

create temporary table foo as select * from maintable where 1-0; -- Credit 4 this goes to a post in the PG archives
insert into foo (select * from maintable where primcol=123);
update foo, set primcol=456;
insert into maintable (select * from foo);

From: pgsql-general-owner(at)postgresql(dot)org [mailto:pgsql-general-owner(at)postgresql(dot)org] On Behalf Of Gauthier, Dave
Sent: Thursday, May 26, 2011 4:24 PM
To: pgsql-general(at)postgresql(dot)org
Subject: [GENERAL] copy record?

Hi:

From within a perl/DBI script, I want to be able to make a copy of a record in a table, changing only the value of the primary key. I don't know in advance what all the columns are, just the table name.

I suppose I could pull the column names for the table from the metadata, query the table/record for the values to copy, build an insert statement from all of that and run it. But is there a simpler, more elegant way to do this?

Thanks for any help !

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Merlin Moncure 2011-05-26 21:17:51 Re: Miidpoint between two long/lat points? (earthdistance?)
Previous Message Brent Wood 2011-05-26 20:39:50 Re: Miidpoint between two long/lat points? (earthdistance?)

Browse pgsql-sql by date

  From Date Subject
Next Message Bosco Rama 2011-05-26 21:18:41 Re: copy record?
Previous Message Tarlika Elisabeth Schmitz 2011-05-26 20:40:12 Re: extracting location info from string