PostgreSQLのバージョン:

default_with_oids

もしWITH OIDSもしくはWITHOUT OIDSのいずれも指定されていない場合、CREATE TABLEおよびCREATE TABLE ASがオブジェクト識別子(OID)列を新規作成のテーブルに含めるか否かを管理します。同時にSELECT INTOで作成されたテーブルにOIDが含まれるか否かも決定します。このパラメータはデフォルトでoffです。PostgreSQL 8.0およびそれ以前ではデフォルトでonでした。

ユーザテーブルでのOID使用は良くないと考えられるため、ほとんどのインストレーションはこの変数を無効にしたままになっています。 特定のテーブルに対してOIDを必要とするアプリケーションは、テーブル作成にあたってWITH OIDSを指定しなければなりません。 この変数は、この動作を行わない古いアプリケーションとの互換性を有効にします。

推奨事項 [EN]

Provided for consistency with 7.3 behavior. Since this creates an OID for every row, can cause OID wraparound in large databases.

件のコメント