skip to Main Content

I’m facing a "Duplicate entry" error when trying to insert data into a MySQL table, even though the values being inserted are unique and should not violate any constraints. I have a unique constraint defined on a column, but the error persists. I’m unsure of what could be causing this issue. Can someone help me identify and resolve the problem?

Here’s the code snippet that triggers the error:

INSERT INTO users (id, name, email)
VALUES (1, 'John Doe', '[email protected]');

The error message I’m receiving is:

Error Code: 1062. Duplicate entry ‘1’ for key ‘PRIMARY’

I have verified that the id column is set as the primary key, and there is no existing record with an id of 1 in the users table. Furthermore, I have checked for any triggers or stored procedures that could be causing the issue, but none exist. What could be causing this error? Is there anything else I should check or modify in my code or table structure? Any suggestions or insights would be greatly appreciated. Thank you!

Suppose to insert without any error

2

Answers


  1. edit ID column , set it to auto-increment.

    And when you insert data , leave the value of the ID EMPTY, the "auto-increment" option will automatically increase the value by 1 each time you add a new row data.

    Login or Signup to reply.
  2. I think MySQL remembers IDs even if they are deleted (not too sure). Anyway this should solve your problem:

    create table users
    (
        id int auto_increment,
        name varchar(150),
        email varchar(255) not null unique,
        primary key(id)
    );
    
    insert into users(id, name, email) values(null, 'John Doe', '[email protected]')
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search