Duplicate key value violates unique constraint

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Duplicate key value violates unique constraint

Nafees Sardar

Hi support,

 

I migrate my data from MS Sql server to postgreSQL database, now when I try to insert new row it gives me error “duplicate key value violates unique constraint”. For example I have a table which contains 100 rows of records when I go for inserting 101 row it give duplicate value constraint error. When I pass PK value manually its working, and one more thing auto increment is enabled for all tables .

 

Can you please let me know anything I am missing?  I will really appreciate it.

 

Thanks

Regards

Nafees Sardar

Reply | Threaded
Open this post in threaded view
|

Re: Duplicate key value violates unique constraint

David G Johnston
On Monday, March 16, 2020, Nafees Sardar <[hidden email]> wrote:

Hi support,

 

I migrate my data from MS Sql server to postgreSQL database, now when I try to insert new row it gives me error “duplicate key value violates unique constraint”. For example I have a table which contains 100 rows of records when I go for inserting 101 row it give duplicate value constraint error. When I pass PK value manually its working, and one more thing auto increment is enabled for all tables .

 

Can you please let me know anything I am missing?  I will really appreciate it.


ALTER SEQUENCE

David J. 
Reply | Threaded
Open this post in threaded view
|

Re: Duplicate key value violates unique constraint

Tom Lane-2
In reply to this post by Nafees Sardar
"Nafees Sardar" <[hidden email]> writes:
> I migrate my data from MS Sql server to postgreSQL database, now when I try
> to insert new row it gives me error "duplicate key value violates unique
> constraint". For example I have a table which contains 100 rows of records
> when I go for inserting 101 row it give duplicate value constraint error.
> When I pass PK value manually its working, and one more thing auto increment
> is enabled for all tables .

Sounds like you need to adjust the sequence counters underlying the
auto-increment columns so that their settings are higher than any
of the already-existing ID values.  Auto-increment isn't really a
native concept in Postgres, it's something you have to build from
a sequence object and a suitable default expression.  Getting the
sequence set correctly is an easy step to miss when migrating from
a different DBMS.

                        regards, tom lane