hi,
Wie ist denn das bei Unique-Attributen? MYSQL müsste ja dann beim Insert alle bestehen Attribute prüfen, um zu gewährleisten, dass beim Insert kein doppeltes Attribut eingefügt wird.
Ja, natürlich.
Das geht aber recht fix, weil UNIQUE ja schon ein Index _ist_. Auf diesem kann schnell die Suche durchgeführt werden, im Grunde genau das gleiche wie bei einem SELECT mit eindeutiger und singulärer WHERE-Bedingung.
Wenn MYSQL für das Abrufen bestehender Attribute einen Index benutzt, müsste das doch schneller gehen, oder nicht?
Deshalb macht's das ja auch :-)
Folglich wäre ein "INSERT" unter dieser Bedingung einen Tick schneller.
Jein.
Die Meldung, dass der Insert nicht ausgeführt werden konnte, weil er einen UNIQUE INDEX verletzen würde, die bekommst du natürlich recht fix, siehe oben.
Was länger dauert, ist ein erfolgreicher INSERT - weil "nach" diesem ja der Index aktualisiert werden muss. _Das_ kostet Zeit, weil das ja nicht mit dem simplen anfügen des neuen Index-Wertes getan ist, sondern auch eine Sortierung wieder hergestellt werden muss (z.B. binärer Suchbaum o.ä.).
gruß,
wahsaga
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }