私はpostgresが初めてです。sqlserverに自動インクリメントと10行のテーブルがあり、最後の行にid = 10がある場合、最後の行を削除すると、次に挿入するものもid = 10になります...確かに?
しかし、postgres では、bigserial を pk として使用して、最大 ID の行を削除し、新しい行を挿入すると、pk 番号がどんどん増加し続けます。
これは正しいです?
私はpostgresが初めてです。sqlserverに自動インクリメントと10行のテーブルがあり、最後の行にid = 10がある場合、最後の行を削除すると、次に挿入するものもid = 10になります...確かに?
しかし、postgres では、bigserial を pk として使用して、最大 ID の行を削除し、新しい行を挿入すると、pk 番号がどんどん増加し続けます。
これは正しいです?
それは正しい。シーケンスについてのマニュアルを読んでください。
bigserial
およびserial
bigint
は、接続されたシーケンスからデフォルトで設定された/integer
列を作成するための表記上の便宜にすぎませんnextval()
。
安全な同時使用のためには、そのようにする必要があります。