Thread: update table sequence

update table sequence

From
e.ellenkamp@copernicus-it.nl (Egbert Ellenkamp)
Date:
All,

Is there a way I can set the sequence of a table equal to highest row
ID?
For example something like:
select setval('mytable_myrowid_seq',select max(myrowid) from mytable);

I read the documentation but could not find anything relevant.

Thanks in advance,

Egbert.


Re: update table sequence

From
"Ross J. Reedstrom"
Date:
On Fri, Mar 16, 2001 at 12:15:28PM +0000, Egbert Ellenkamp wrote:
> All,
> 
> Is there a way I can set the sequence of a table equal to highest row
> ID?
> For example something like:
> select setval('mytable_myrowid_seq',select max(myrowid) from mytable);

So close!

select setval('mytable_myrowid_seq',max(myrowid)) from mytable;

Ross


Re: update table sequence

From
Tom Lane
Date:
e.ellenkamp@copernicus-it.nl (Egbert Ellenkamp) writes:
> select setval('mytable_myrowid_seq',select max(myrowid) from mytable);

That should work if you put in the required parentheses around the
sub-select:

select setval('mytable_myrowid_seq', (select max(myrowid) from mytable));
        regards, tom lane