Re: vacuum and serial primary keys - Mailing list pgsql-sql

From D'Arcy J.M. Cain
Subject Re: vacuum and serial primary keys
Date
Msg-id 200302010916.08465.darcy@druid.net
Whole thread Raw
In response to vacuum and serial primary keys  (Carmen Marincu <marincuc@eeng.dcu.ie>)
List pgsql-sql
On Saturday 01 February 2003 07:45, Carmen Marincu wrote:
> I am using Postgresql 7.1.3 and I have deleted 3000 rows from a table
> (with DELETE).
> Than I used vacuum <mytable> to actually delete the rows markes as deleted
> by the DELETE command..
> The trouble is that the "counter" for the serial primary key (ID field)
> wasn't reset. So now althought I have only 2 rows in my table they have
> the ID 3001 and 3002.
>
> Is this normal ? If not could someone please explain me how could  I reset
> the "counter" to ignore the deleted rows ?

It is very normal.  The last thing you need is a database engine that changes
your primary key without an explicit command to do so.  In fact, sometimes I
think that the database should enforce the rule that primary keys are
immutable and not even allow it explicitely.  Perhaps a configuration option.

--
D'Arcy J.M. Cain <darcy@{druid|vex}.net>   |  Democracy is three wolves
http://www.druid.net/darcy/                |  and a sheep voting on
+1 416 425 1212     (DoD#0082)    (eNTP)   |  what's for dinner.


pgsql-sql by date:

Previous
From: Carmen Marincu
Date:
Subject: vacuum and serial primary keys
Next
From: Bruno Wolff III
Date:
Subject: Re: update and IN vs. EXISTS