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 !
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?) |
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 |