ORA-00001: Unique constraint violated (Unique Constraint verletzt)
OracleWas bedeutet das?
Eine einzufügende oder zu aktualisierende Zeile verletzt einen UNIQUE- oder PRIMARY-KEY-Constraint. Der gleiche Wert ist also bereits vorhanden.
Ursache
Erneutes Einfügen einer Zeile mit demselben Schlüsselwert, doppelte Daten in einer Spalte, die eindeutig sein muss, oder doppelte Verarbeitung desselben Datensatzes bei Replikation/Wiederholungsläufen.
Lösung
Ermittle die verletzte Spalte über den Constraint-Namen in der Fehlermeldung: SELECT column_name FROM all_cons_columns WHERE constraint_name = 'CONSTRAINT_NAME'. Finde doppelte Daten mit GROUP BY ... HAVING COUNT(*) > 1. Verwende in der Anwendung für vorhandene Datensätze UPDATE oder MERGE statt INSERT. Ist der Sequence-Wert zurückgefallen, setze ihn mit ALTER SEQUENCE vor.
Weitere Einträge zu dieser Datenbank
- ORA-00054Resource busy and acquire with NOWAIT specified or timeout expired (Ressource belegt; NOWAIT angegeben oder Timeout abgelaufen)
- ORA-00060Deadlock detected while waiting for resource (Deadlock beim Warten auf Ressource erkannt)
- ORA-01017Invalid username/password; logon denied (ungültiger Benutzername/Passwort; Anmeldung verweigert)
- ORA-01555Snapshot too old: rollback segment number too small (Snapshot zu alt: Rollback-Segment-Nummer zu klein)