web-dev-qa-db-ja.com

postgresql DBの一意キーの正しいデータ型は何ですか?

postgresqlデータベースのテーブルの一意のキー(たとえば、ユーザーのID)に対してどのデータ型を選択する必要がありますか?
bigintは1つですか?

ありがとう

20
socksocket

一意のIDを自動的にインクリメントするには、serialタイプを使用します。

20億を超えるエントリを計画している場合は、bigserialを使用してください。 serialは、MySQLのAUTO_INCREMENTに相当するPostgresSQLです。

PostgresSQLドキュメント:数値タイプ

30
Mark Loiseau

bigint(または自動インクリメントキーが必要な場合はbigserial)で問題ありません。

know forcertainで、ロードする行が多すぎない場合は、integer(または通常のserial)で、ハードディスクの空き容量を節約できる可能性があります。