dedlfix: Fehlermeldung bei vorhandenen Index in Mysql

Beitrag lesen

Tach!

ich hab einen Index über mehrere Felder um doppelte Einträge zu verhindern und die Abfrage zu beschleunigen.
Aktuell wird die id (Auto-Incremtent) um eins erhöht und keine Fehlermeldung erzeugt.

Rate ich richtig, dass dieser Index zum einen ein Unique Index ist (oder der Primary Key) und zum anderen ein Feld davon das Auto-Increment-Feld ist?

Kann ich Mysql erklären, dass der Datensatz nicht geschrieben wird, der alte Eintrag erhalten bleibt und ich ne Fehlermeldung bekomme?

In welchem Fall? Wenn du die Werte händisch vergibst? Auto-Increment vergibt nur dann einen Wert selbständig, wenn du keinen vorgibst oder 0 oder NULL (bei NOT-NULL-Feldern). Oder willst du dass der AI-Wert immer unterschiedlich ist, auch wenn durch unterschiedliche Werte im zweiten Feld bereits die Eindeutigkeit gegeben ist?

Alternativ müsste ich halt vorher noch abfragen, ob der Eintrag schon existiert, aber ich denke, ein Query ist performanter als zwei ;)

Erst prüfen und später schreiben ergibt auch ein TOCTTOU-Problem.

dedlfix.