> 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@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026