Re: Copy row from table to table

From: "Doug Bloebaum" <DBloebau(at)luxotticaRetail(dot)com>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Re: Copy row from table to table
Date: 2004-12-14 21:07:29
Message-ID: s1bf0fd9.054@smtp.luxotticaretail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>>> Michael Fuhr <mike(at)fuhr(dot)org> 12/14/04 1:45 PM >>>
>>On Tue, Dec 14, 2004 at 11:48:21AM -0600, Kall, Bruce A. wrote:

>> What is the easiest way to copy a particular row from one table to
>> another (assuming all the columns are exactly the same). I want to

>> maintain a table ('backup_table') that has rows I have (or will be)

>> deleting from my 'original_table'. (Both tables have the same 68
columns).
>>
>> I've tried
>>
>> INSERT INTO backup_table SELECT * FROM original_table WHERE
id='2305'

>That should work if the table definitions are identical or
compatible,
>including column positions being the same. Didn't it work? If not,
>what happened?

One cute way to guarantee that the table definitions are identical is:

CREATE TABLE backup_table AS SELECT * FROM original_table WHERE 1=0;

That ensures that subsequently doing the following is safe:

INSERT INTO backup_table SELECT * FROM original_table WHERE id='2305';

Browse pgsql-general by date

  From Date Subject
Next Message Jimmie H. Apsey 2004-12-14 21:18:28 Re: Performance differences 7.1 to 7.3
Previous Message Mike Cox 2004-12-14 20:20:07 4th RFD: comp.databases.postgresql