私はpostgresqlを使用していますが、どのくらい大きいのか疑問に思っていました
id INTEGER PRIMARY KEY
と比較することができます
id SERIAL PRIMARY KEY
Java では、anint
は 4 バイト (32 ビット) であるため、最大 2,147,483,647 になります。これはpostgresqlの場合ですか?もしそうなら、2,147,483,647行を超えることはできないということですか?
私はpostgresqlを使用していますが、どのくらい大きいのか疑問に思っていました
id INTEGER PRIMARY KEY
と比較することができます
id SERIAL PRIMARY KEY
Java では、anint
は 4 バイト (32 ビット) であるため、最大 2,147,483,647 になります。これはpostgresqlの場合ですか?もしそうなら、2,147,483,647行を超えることはできないということですか?
Abigserial
は 8 バイト長です。それでも不十分な場合は、128 ビットの uuidを使用できます。
create table t (
id uuid primary key
);
insert into t (id)
select uuid_generate_v1mc();
select * from t;
id
--------------------------------------
916bf7e6-f0c2-11e2-8d14-d372d5ab075f
このuuid_generate_v1mc
機能はuuid-ossp モジュールによって提供されます
uuid 関数の主な利点は、さまざまなシステム間で一意である可能性が非常に高い ID を生成することです。A ではserial
、これらのシステム間で衝突が発生します。