From: | Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | molivier(at)yahoo(dot)com (Michael Olivier) |
Cc: | pgsql-sql(at)postgreSQL(dot)org |
Subject: | Re: [SQL] keeping OID's when copying table |
Date: | 1999-02-03 03:55:01 |
Message-ID: | 199902030355.WAA19807@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
> Hi folks,
>
> Using 6.3.2 in Linux and trying to clean up some tables by getting rid
> of dead columns, but need to preserve the OID's... The FAQ in "3.17)
> What is an oid? What is a tid?" describes this process to copy a
> table, keeping the OID's:
>
> CREATE TABLE new_table (mycol int);
> INSERT INTO new_table SELECT oid, mycol FROM old_table;
>
> But I tried this and it failed:
>
> dmlists=> create table test (acctname text not null);
> CREATE
> dmlists=> create table test2 (acctname text not null);
> CREATE
> dmlists=> insert into test2 select oid, acctname from test;
> ERROR: Type of oid does not match target column acctname
>
> How can I do this?
Thank you for pointing out my error. It should be:
CREATE TABLE new_table (mycol int);
INSERT INTO new_table (oid, mycol) SELECT oid, mycol FROM old_table;
I have updated the FAQ.
--
Bruce Momjian | http://www.op.net/~candle
maillist(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
From | Date | Subject | |
---|---|---|---|
Next Message | Claudius du Plessis | 1999-02-03 05:57:55 | subscribe pgsql-sql |
Previous Message | Vladimir Dobrokhotov | 1999-02-03 01:01:17 | Re: [SQL] index on int2. |