Open2
PostgreSQL覚書

text
で良い
文字列型は -
char(n)
やvarchar(n)
のn
は文字数である。バイト数ではない。 -
char
の利用にほぼ利点なし -
text
とvarchar
は意識的に使い分ける必要なし。文字数制限はCHECK制約の使用が望ましい。

integer
整数データ型は理由がなければ -
smallint
はディスク容量に制限がある場合のみ使用する -
bigint
はinteger
の許容範囲では十分でない場合のみ使用する。integer
の方がパフォーマンスは上。