/ / Es gibt eine Methode in mysql, die Daten nur einfügen kann, wenn COUNT gleich Null ist? - MySQL, Datenbank

Es gibt eine Methode in mysql, die Daten nur einfügen kann, wenn COUNT gleich Null ist? - MySQL, Datenbank

In Anbetracht eines Registrierungsskripts muss ich zuerst prüfen, ob eine E-Mail bereits in den Datenbanken vorhanden ist. Wenn es vorhanden ist, müssen keine Daten eingefügt werden, wenn nicht, kann ich mit INSERT INTO fortfahren

Auf jeden Fall muss ich am Ende der Anfrage dieErgebnis für die Kommunikation beim Endnutzer. Ich habe schon ein Skript geschrieben, aber es erfordert mindestens zwei Abfragen. Mein Ziel ist es, es mit nur einer Abfrage zu tun

Antworten:

4 für die Antwort № 1

Zuerst müssen Sie einen eindeutigen Schlüssel in das Feld für die E-Mail-Adresse einfügen. Dadurch verhindern Sie, dass mehrere Datensätze mit derselben E-Mail-Adresse eingefügt werden.

Sobald Sie das getan haben, können Sie verwenden INSERT IGNORE und prüfte die Anzahl der betroffenen Zeilen, die von der Abfrage zurückgegeben wurden. Wenn es null ist, weißt du, dass es ein Duplikat war. Wenn es eins ist, dann weißt du, dass es nicht war. Alternativ kannst du einfach ein reguläres verwenden INSERT und den doppelten Schlüsselfehler abfangen, der von der Datenbank generiert wurde, um festzustellen, ob es sich um einen doppelten Datensatz handelte oder nicht.