Re: Reset sequence to current maximum value of rows - Mailing list pgsql-general

From Ron Johnson
Subject Re: Reset sequence to current maximum value of rows
Date
Msg-id CANzqJaB0OeAchVgnTznmPTbo9Y-H9r9g7S=TqJb25eX_KodcRA@mail.gmail.com
Whole thread Raw
In response to Re: Reset sequence to current maximum value of rows  (Rich Shepard <rshepard@appl-ecosys.com>)
Responses Re: Reset sequence to current maximum value of rows
List pgsql-general
On Thu, Jun 13, 2024 at 2:38 PM Rich Shepard <rshepard@appl-ecosys.com> wrote:
On Thu, 13 Jun 2024, Ron Johnson wrote:

> If the table has a primary key, then the command *should* have failed with
> a duplicate key error as soon as the first dupe was discovered.

Ron,

I had manually set the PKs (column: company_nbr) which has a sequence
defined for it when I added about 50 rows to the table yesterday.

Now that I'm aware of the DEFAULT option when inserting new rows I tried
to reset the sequence maximum number to max(company_nbr); the highest number
for the rows inserted yesterday. That's when I tried resetting the current
sequence number with the expectation that new rows would be numbered
sequentially higher than that value.

Today I saw that I had missed one new company and entered it using DEFAULT
for the company_nbr PK.

No need to do that.  Just write:
INSERT INTO public.companies (company_name, , industry, status)
    VALUES ('Berkshire Hathaway', 'Conglomerate', 'Mumble');
 
The next value of companies_org_nbr_seq will automatically be taken and inserted  into the table.

When I looked at that table every company_name that
I had added yesterday was changed to the one inserted today.

You'll have to show us what you did. 

pgsql-general by date:

Previous
From: Rich Shepard
Date:
Subject: Re: Reset sequence to current maximum value of rows
Next
From: Adrian Klaver
Date:
Subject: Re: Reset sequence to current maximum value of rows