1

シリアルタイプに制約を設定したいのですが、偶数または奇数のみが生成されます。

4

2 に答える 2

6

SERIALシーケンスの作成と使用に関する構文シュガーです。

したがって、すべて手動で行い、ニーズに合った特別なタイプのシーケンスを作成できます。

CREATE SEQUENCE tablename_colname_seq INCREMENT BY 2 START WITH 2;

CREATE TABLE tablename (
    colname integer NOT NULL DEFAULT nextval('tablename_colname_seq');

ALTER SEQUENCE tablename_colname_seq OWNED BY tablename.colname;

または、すでにテーブルと列がある場合は、基になるシーケンスを変更SERIALできます。

ALTER SEQUENCE tablename_colname_seq INCREMENT BY 2;

基になるシーケンスの名前は、 psqlを使用してテーブルを「記述する」ことで取得できます。

\d tablename
于 2009-08-15T11:29:33.973 に答える