Skip Navigation

Tags:

13. Oktober 2011

Doppelte Einträge in MySql verhindern

Abgelegt unter: — admin @ 10:35

Doppelte Einträge in die Datenbank sollen verhindert werden.

In einer Snippet – Datenbank soll ein Tagging – System Einzug halten. Der Administrator kann nun bei den Snippets die Tags löschen oder neue einfügen (Ajax). Kein Snippets soll über doppelte Tags verfügen.

Zuerst erstelle ich über die ID des Snippet (feld_A) und der ID des Tags (feld_B) einen UNIQUE Schlüssel.

ALTER TABLE tabelle
ADD UNIQUE INDEX myIndex (feld_A, feld_B);

Als Alternative kann man auch einen PRIMARY Schlüssel verwenden.

ALTER TABLE tabelle
ADD PRIMARY KEY (feld_A, feld_B);

Danach kann man beim Einfügen des Datensatzes mit INSERT IGNORE arbeiten.