ORA-00001: unique constraint (string.string) violated

The ORA-00001: unique constraint (string.string) violated error comes when you try to update or insert a record in a table(Oracle Database) that creates a duplicate on the columns which are defined as unique.

As per Oracle error message guide,

ORA-00001: unique constraint (string.string) violatedCause: An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see this message if a duplicate entry exists at a different level.

Action: Either remove the unique restriction or do not insert the key.

Let’s say you have a table employee where employee_id is either a primary key or you have defined a unique constraint on it.

CREATE TABLE employee (
    employe_id   NUMBER PRIMARY KEY,
    name         VARCHAR2(100)
);

Note:- Oracle creates a unique constraint on the column defined as a primary key.

Insert data in this table

INSERT INTO employee VALUES (100,'Steve');
INSERT INTO employee VALUES (101, 'Thomas');

Now insert records with a duplicate value

SQL> INSERT INTO employee VALUES (100,'John');
INSERT INTO employee VALUES (100,'John')
*
ERROR at line 1:
ORA-00001: unique constraint (APPS.SYS_C001228683) violated

Now you already have an employee steve with employee_id =100 and there is an insert or update on this table which tries to create another record with employee_id =100. This violates the unique constraint on the employee_id columns and you get,

ERROR at line 1:

ORA-00001: unique constraint (APPS.SYS_C001228683) violated

Just drop the unique constraint on columns to resolve the ORA-00001: unique constraint error in Oracle Database.