Hello,
ich knabber da immer noch an dem Feature, der ein Bug ist oder dem Bug der kein Feature ist, oder oder. Da englische und Deutsche Doku von MySQL erheblich voneinander abweichen mal hier der Text aus der englsichen, mit der Bitte, mir mal bei einer Überstzug behilflich zu sein:
aus:http://dev.mysql.com/doc/mysql/en/DELETE.html
If you delete the row containing the maximum value for an AUTO_INCREMENT column, the value will be
Wenn sie die Zeile, die den größten Wert einer Auto-Increment Spalte enthält, löschen, wird der
reused for an ISAM or BDB table, but not for a MyISAM or InnoDB table. If you delete all rows in
Wert für eine ISAM oder BDB-Tabelle zurückgezogen (wiederbenutzt), aber nicht bei einer MyISAM
oder InnoDB-Tabelle. Wenn Sie alle Zeilen in
the table with DELETE FROM tbl_name (without a WHERE) in AUTOCOMMIT mode, the sequence starts over
der Tabelle mit DELETE FROM tbl_name (ohne ein WHERE) im AUTOCOMMIT Modus löschen, -----hier-1----
for all table types except for InnoDB and (as of MySQL 4.0) MyISAM. There are some exceptions to
für alle Tabellentype mit Ausnahme von InniDB und (-------hier-2----) MyISAM
this behavior for InnoDB tables, discussed in section 16.7.3 How an AUTO_INCREMENT Column Works in
...
InnoDB
the sequence starts over Die Reienfolge wird aktiviert (?)
soll das heißen: die Reihenfolge beginnt von neuem ?
as of MySQL 4.0 heißt das nun: sowie seit MySQL 4.0
oder: genauso wie bei MySQL 4.0
Schlussendlich gibt es dann aber bei MySQL ab Version 4.0 keine einigermaßen performante Möglichkeit mehr, sich eine Hilfstabelle für Sortierschlüssel zu bauen.
Eine Möglichkeit, während der Abfarge die Zeilennummer eines Querys zu ermitteln, scheint es ja auch nicht zu geben. Das wäre immerhin noch die beste Lösung.
update table set SORTSPALTE = ROW_OF_QUERY() where PARENT = '$warengruppe' order by SORTSPALTE
Das wäre genial. Aber die Funktion ROW_OF_QUERY() habe ich mir ja nur ausgedacht. Gibts da nicht doch was, was ich nur übersehen habe?
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau