PostgreSQLで自動採番IDを作成する方法

PostgreSQLでは、シーケンスを使用することで、自動採番される主キーIDを実現できます。

まず、シーケンスを作成します。

CREATE SEQUENCE table_name_id_seq;

次に、デフォルト値としてシーケンスを使用する列をテーブルに定義します。

ALTER TABLE table_name
    ADD COLUMN id serial PRIMARY KEY DEFAULT nextval('table_name_id_seq');

そうすると、テーブルに新しいレコードを挿入するたびに、id 列の値が自動的に 1 ずつ増えます。

手動でレコードを挿入するときにID列を自動で増やすには、DEFAULTキーワードを使用します。

INSERT INTO table_name (column1, column2, ...)
    VALUES (value1, value2, ...);

既存のテーブルに自増の主キー ID を追加する場合は、CREATE TABLE 文ではなく、ALTER TABLE 文を使用する必要があることに注意してください。

bannerAds