Ga naar inhoud
SQL-/databasefoutenFout
23505

23505 — Schending van uniekheidsbeperking

Een INSERT of UPDATE schendt een uniekheidsbeperking of primaire sleutel.

postgresql

Wat veroorzaakt deze fout

De waarde bestaat al in een kolom met een UNIQUE-beperking of PRIMARY KEY.

Hoe op te lossen

Gebruik INSERT ... ON CONFLICT (PostgreSQL) of ON DUPLICATE KEY UPDATE (MySQL). Controleer op duplicaten voor het invoegen.

Voorbeeld

-- unique_violation
INSERT INTO users (email) VALUES ('dup@test.com');
-- Fix: use ON CONFLICT
INSERT INTO users (email) VALUES ('dup@test.com')
  ON CONFLICT (email) DO UPDATE SET updated_at = NOW();
Officiële documentatie

Gerelateerde foutcodes