treziman: Kein Zugriff nach Änderung

Beitrag lesen

Sowas macht man anders, weil sonst zwischen der Abfrage und dem Anlegen eine zeitliche Lücke entsteht, in der sich durch parallel laufende Handlungen Änderungen ergeben, nach denen das Abfrageergebnis nicht mehr stimmt. Besser ist, einen Unique-Index auf die Nichnamen-Spalte zu legen und auf gut Glück ein Eintragen zu versuchen. Wenn kein Fehler auftrat, ist alles in Ordnung, und der neue Nickname wurde angelegt. Wenn das DBMS eine Unique-Constraint-Verletzung meldet, gab es den Namen schon. Du musst beim Auswerten der Fehler auf genau diese Meldung testen, so dass du dem Anwender sagen kannst, dass er einen anderen Namen wählen soll.

Aha, dachte ich mir schon, dass es auch einfacher geht.
Unique-Index bedeutet, unter phpmyadmin - Tabellenstruktur - hinten auf das Feld mit dem "U" klicken? Habe ich mal gemacht und die Meldung bekommen:

ALTER TABLE 'kunden' ADD UNIQUE { 'nickname' }

Gruss
Thorsten