Sequence update function?

Поиск
Список
Период
Сортировка
Искать

Sequence update function?

От:
"Uwe C. Schroeder" <uwe@oss4u.com>
Дата:

Hi,

just thought I ask before I start doing it myself: Has anyone ever written a 
stored procedure (or any other means) of syncing the sequence to the max # 
key in the corresponding tables?

I'm running a simple script to update table contents between dev and 
production system, however the script is flawed in the way that it copied the 
primary key along (it's a simple pg_dump|pg-restore shellscript). It works 
fine because all rows that are already there just fail for PK violation. 
In the end I'm ending up with sequences out of sync. So i though a simple 
little helper that loops over the sequences (information schema), grabs the 
according table, does a max(key) on the table and sets the sequence to that 
will do nicely.
Anyone written something like that?

Thanks

	UC

--
Open Source Solutions 4U, LLC	1618 Kelly St
Phone:  +1 707 568 3056		Santa Rosa, CA 95401
Cell:   +1 650 302 2405		United States
Fax:    +1 707 568 6416

Re: Sequence update function?

От:
Thomas Markus <t.markus@proventis.net>
Дата:
do a

select setval('sequence',max(col)+1) from tablename

for each table

tm

Uwe C. Schroeder schrieb:
> Hi,
>
> just thought I ask before I start doing it myself: Has anyone ever written a 
> stored procedure (or any other means) of syncing the sequence to the max # 
> key in the corresponding tables?
>   

FAQ