Re: Script to reset all sequence values in the a given DB?

From: "Pavel Stehule" <pavel(dot)stehule(at)gmail(dot)com>
To: "Nathan Wilhelmi" <wilhelmi(at)ucar(dot)edu>
Cc: "PGSQL Mailing List" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Script to reset all sequence values in the a given DB?
Date: 2007-12-10 21:33:15
Message-ID: 162867790712101333k135d4525l2ae9d32f28fa6d4d@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

On 10/12/2007, Nathan Wilhelmi <wilhelmi(at)ucar(dot)edu> wrote:
> Hello - Does anyone happen to have a SQL script or function that can
> reset all the sequence values found in a given DB? When we rebuild the
> DB it would be handy to be able to set all the sequence back to a known
> starting place.
>

create or replace function resetall()
returns void as $$
declare
v varchar;
m integer;
begin
for v in
select n.nspname || '.' || c.relname
from pg_catalog.pg_class c
left join
pg_catalog.pg_namespace n
on n.oid = c.relnamespace
where c.relkind = 'S'
loop
execute 'select min_value from '||v into m;
setval(v, m, false);
end loop;
return;
end; $$ language plpgsql;

Regards

Pavel Stehule
> Thanks!
>
> -Nate
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Obe, Regina 2007-12-10 21:52:14 Re: Script to reset all sequence values in the a given DB?
Previous Message hjenkins 2007-12-10 21:31:42 comparing rows

Browse pgsql-hackers by date

  From Date Subject
Next Message Obe, Regina 2007-12-10 21:52:14 Re: Script to reset all sequence values in the a given DB?
Previous Message Joshua D. Drake 2007-12-10 21:16:05 Re: Release Note Changes