[pgsql-jp: 36055] Re: WITHOUT OIDSへの変更

Kiyoshi Mizuno kiyoshi_mizuno @ mail.toyota.co.jp
2005年 9月 29日 (木) 11:02:02 JST


水野%自己レス です。

7.4.6ではALTER TABLEコマンドに

 ALTER TABLE テーブル名 SET WITHOUT OIDS;

というのがあります。解説には

 この形式は、テーブルからoid列を削除します。テーブルからのOIDの削除は
 即座には行われません。行が更新された時にOID用の領域は回収されます。
 行が更新されないと、値とOIDの両方の領域がずっと残ります。これは、
 意味的には、DROP COLUMN処理に似ています。 

とありました。
前述の alter table テーブル名 drop oid; でも「悪いとは断定できない」ですが、
このコマンドを使った上でダミーの行更新を行うのが正当でしょう。
このコマンド、7.2.8には無いですか? (無いからこういうメールをポストしたんだろうな)




pgsql-jp メーリングリストの案内