MySQL -> Spalte durchsuchen
-
Hi,
wie kann ich in einer MySQL Datenbank eine Spalte durchsuchen ob ein bestimmter Eintrag schon vorhanden ist. Der zu vergleichende Wert kommt von einer Benutzereingabe aus einem Eingabefeld, wenn dieser Wert in der Datenbank vorhanden ist soll er die Eingabe verwerfen, ansonsten soll er den Wert eintragen.
MfG
Dominic
-
Also ich würde an deiner Stelle zuerst mit einer SELECT Anweseisung nach dem Wert in der Speziefischen Spalte suchen.
Wenn du mit PHP Arbeitest gibt es eine Funktion die dir die Anzahl der Treffer zurückgibt.
Wenn diese Anzahl > 0 ist musst du eine DELETE Anweisung ausführen.
So und jetzt fürhst du das INSERT aus.In SQL Selber kann man solche Entscheidung so weit ich weiß nicht treffen. Außer du defieniert diesen Wert als Primärschlüssel. Somit wird dir das DBMS eine Fehlermeldung zurückgeben wenn du versucht einen weiteren Datensatz mit dem selben Primärschlüssel zu erzeugen.
Also beide Varianten würden funktionieren.
-
Nur dass deine 1. Lösung nicht ganz sein Problem erfüllt
Aber wenn du deine INSERT-Anweisung nur wenn die Anzahl gleich 0 ist und du das Löschen weg lässt passt eszu 2.) Ich würde da dann eher UNIQUE nehmen