MySQL UNIQUE – Spalten eindeutig setzen
Lerne, wie du mit der MySQL-Script-Vorlage eine Spalte auf UNIQUE setzt, doppelte Werte verhinderst und eine UNIQUE-Spalte direkt in der Tabellenansicht erkennst.
Ziel des Tutorials
Du lernst, wie du eine Datenbankspalte im bluetronix CMS mit UNIQUE eindeutig setzt. Dadurch kann derselbe Wert innerhalb dieser Spalte nicht mehrfach gespeichert werden.
Das ist beispielsweise sinnvoll, wenn in einer Tabelle E-Mail-Adressen, Telefonnummern oder Kundennummern jeweils nur einmal vorkommen dürfen.
Ausgangssituation ohne UNIQUE
In unserem Beispiel verwenden wir die Tabelle Contacts mit den Spalten ID, Phone und Name. Die Telefonnummer +49 263 43628376 ist bereits beim Datensatz Smith vorhanden.
Solange die Spalte Phone nicht als UNIQUE gesetzt ist, kann dieselbe Telefonnummer erneut eingetragen werden.
Nach dem Speichern ist der zusätzliche Datensatz vorhanden. Die Telefonnummer kommt damit mehrfach in der Spalte Phone vor.
Spalte mit UNIQUE eindeutig setzen
Öffne MySQL - Script und wähle die Vorlage Tabellen Spalte eindeutig setzen (UNIQUE). Anschließend passt du den Befehl an deine Tabelle und die gewünschte Spalte an.
Für die Tabelle Contacts und die Spalte Phone wird im Beispiel folgender Befehl verwendet:
ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone);
Nach dem Ausführen bestätigt das CMS unter MySql-Meldung, dass der Befehl erfolgreich ausgeführt wurde. Die Spalte Phone ist damit eindeutig gesetzt.
Doppelten Wert erneut testen
Jetzt wird erneut versucht, die bereits vorhandene Telefonnummer +49 263 43628376 als neuen Datensatz zu speichern.
Da die Spalte jetzt UNIQUE ist, darf derselbe Wert nicht noch einmal gespeichert werden. Beim Speichern wird der doppelte Eintrag deshalb abgewiesen und es kommt zu einem Fehler.
Wichtig: UNIQUE verhindert doppelte Werte direkt auf Datenbankebene. Dadurch kann ein Wert, der bereits in der eindeutig gesetzten Spalte vorhanden ist, nicht erneut gespeichert werden.
UNIQUE-Spalte im CMS erkennen
In der Tabellenansicht kannst du mit der Maus über die betreffende Spalte gehen. Bei einer UNIQUE-Spalte zeigt das CMS einen Hinweis an, dass jeder Eintrag nur einmal in dieser Spalte enthalten sein darf.
Typische Einsatzmöglichkeiten
UNIQUE eignet sich immer dann, wenn bestimmte Informationen nicht doppelt in derselben Spalte vorkommen sollen. Typische Beispiele sind:
- E-Mail-Adressen bei einem Newsletter
- Telefon- oder Handynummern
- Kundennummern
Damit kannst du bereits auf Datenbankebene verhindern, dass derselbe eindeutige Wert mehrfach gespeichert wird.
Zusammenfassung
Mit der Vorlage Tabellen Spalte eindeutig setzen (UNIQUE) kannst du eine Spalte so festlegen, dass jeder Wert nur einmal vorkommen darf. Im Beispiel wird die Spalte Phone der Tabelle Contacts auf UNIQUE gesetzt. Danach wird ein erneuter Eintrag derselben Telefonnummer beim Speichern abgewiesen. In der Tabellenansicht zeigt das CMS bei der betreffenden Spalte zusätzlich einen entsprechenden UNIQUE-Hinweis an.
FAQ
was Kunden uns häufig Fragen
Was bedeutet UNIQUE bei einer Datenbankspalte?
UNIQUE bedeutet, dass derselbe Wert innerhalb dieser Spalte nicht mehrfach gespeichert werden darf.
Wofür kann ich UNIQUE verwenden?
UNIQUE eignet sich für Werte, die nur einmal vorkommen sollen, zum Beispiel E-Mail-Adressen, Telefonnummern oder Kundennummern.
Wo kann ich eine Spalte im bluetronix CMS auf UNIQUE setzen?
Öffne MySQL - Script und verwende dort die Vorlage Tabellen Spalte eindeutig setzen (UNIQUE).
Welcher MySQL-Befehl wird im Beispiel verwendet?
Im Tutorial wird ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone); verwendet.
Welche Tabelle wird im Beispiel verwendet?
Das Beispiel verwendet die Tabelle Contacts mit den Spalten ID, Phone und Name.
Welche Spalte wird im Beispiel auf UNIQUE gesetzt?
Die Spalte Phone wird auf UNIQUE gesetzt.
Was passiert ohne UNIQUE bei einem doppelten Wert?
Ohne UNIQUE kann im gezeigten Beispiel dieselbe Telefonnummer erneut gespeichert werden.
Was passiert nach dem Setzen von UNIQUE bei einem doppelten Wert?
Der doppelte Wert wird beim Speichern abgewiesen und es kommt zu einem Fehler.
Wie erkenne ich im CMS eine UNIQUE-Spalte?
Wenn du mit der Maus über die betreffende Spalte gehst, zeigt das CMS einen Hinweis an, dass jeder Eintrag nur einmal in dieser Spalte enthalten sein darf.
Kann ich UNIQUE für Newsletter-E-Mail-Adressen verwenden?
Ja. Damit kannst du verhindern, dass dieselbe E-Mail-Adresse mehrfach in der entsprechenden Spalte gespeichert wird.
Kann ich UNIQUE für Telefonnummern verwenden?
Ja. Im Tutorial wird genau dieser Anwendungsfall mit der Spalte Phone gezeigt.
Kann ich UNIQUE für Kundennummern verwenden?
Ja. Wenn jede Kundennummer nur einmal vorkommen soll, ist UNIQUE dafür geeignet.
Warum ist UNIQUE sinnvoll?
UNIQUE verhindert doppelte eindeutige Werte direkt auf Datenbankebene und hilft dadurch, doppelte Einträge in der betreffenden Spalte zu vermeiden.