phpbar.de logo

Mailinglisten-Archive

[php] MySQL Absturz bei Index-Sortierung

[php] MySQL Absturz bei Index-Sortierung

Georg Leitner php_(at)_phpcenter.de
Wed, 28 Mar 2001 10:44:12 +0200


> da würdest du nur mit einem table-write-lock drum herum kommen.
> aber gerade wenn du viele beiträge hast, wird diese methode langfristig
sehr
> langsam, da unter umständen sehr viele datensätze geändert werden müssen
und
> so viele schreibzugriffe lang dauern können.

das wäre nicht das problem. ich hab da eh nur max. 50 Datensätze.

> leiderhab ich dafür jetzt auch keien patentlösung parat. aber evtl. kannst
> du es ja so machen, das jeder datensatz die information über seine
position
> selbst enthält, ohne alle anderen verändern zu müssen. vielleicht geht es
ja
> so: jeder datensatz hat einen eindeutigen identifizierer per
auto_increment
> und ein feld, das die information enthätl, auf welchen beitrag es folgt.
> beim select machst du dann ein order by auf dieses feld und hast die
> richtige reihenfolge, ohne alle anderen datensätze ändern zu müssen.
> aber: das hab ich mir grad ausgedacht, keine ahnung, ob das funktioniert,
> aber vielleicht ist es ja ein denkansatz.

Das übersteigt meine logik. meine gedanken:

ID (auto_increment) | Bezug, start bei 0

1|0 - 1 kommt zuerst
2|1 - 2 kommt nach 1
3|2 - 3 kommt nach 2
4|3 - 4 kommt nach 3

jetz füg ich eins ein (also id 5), das nach 2 kommt.
d.h. ich setz den Bezug auf 2. Den Beitrag, der bisher 2 hatte, setzte ich
auf 5.

1|0 - 1 kommt zuerst
2|1 - 2 kommt nach 1
3|5 - 3 kommt nach 5
4|3 - 4 kommt nach 3
5|2 - 5 kommt nach 2

ein order nach Bezug liefert also leider nicht das gewünschte ergebnis.
kapier ich hier was nicht?



php::bar PHP Wiki   -   Listenarchive