One Sequence for all tables or one Sequence for each table? - Mailing list pgsql-general

From Janning Vygen
Subject One Sequence for all tables or one Sequence for each table?
Date
Msg-id 200506021036.20460.vygen@gmx.de
Whole thread Raw
Responses Re: One Sequence for all tables or one Sequence for each
List pgsql-general
Hi,

if you define a SERIAL column postgresql's default is to generate a sequence
for each SERIAL column (table_column_seq). But you can use one sequence for
the whole database like this:

CREATE dbsequence;
CREATE TABLE one (
  id int4 NOT NULL DEFAULT nextval('dbseq')
);
CREATE TABLE two (
  id int4 NOT NULL DEFAULT nextval('dbseq')
);

One drawback: You reach the internal end of a sequence faster if you use your
sequence for all tables. But this can be avoided if you use int8 datatype.

Are there other drawbacks/benfits using one Sequence for each table or one
sequence for all tables?

kind regards,
janning

pgsql-general by date:

Previous
From:
Date:
Subject: Re: writting a large store procedure
Next
From: Himanshu Baweja
Date:
Subject: Stats not getting updated....