phpbar.de logo

Mailinglisten-Archive

[php] inserting between 2 rows

[php] inserting between 2 rows

Holger Bahr hb_(at)_tsi-gmbh.de
Mon, 06 Dec 1999 17:59:06 +0100


Andreas schrieb:
----------------
>>Dann benutze den feldtyp timestamp und später ein
>>select * from table order by timestamp_feld
>>Fettich!

Eben nicht. Wäre ja zu schön.
Nimm 5 Datensätze, alle gestern erstellt.
Heute knallst Du einen weiteren rein der aber zwischen
1 und 2 gesetzt werden soll.

Wennde nach Timestamp sortierst, wird der heutige die
Nummer 6 und das ist nicht gewünscht.

Es geht nicht um den Zeitpukt wann die Einträge geschrieben
werden, sonden um die Stelle/Position, an welche die Einträge
gesetzt werden.

Holger

Kristian schrieb:
-----------------
>>Sprich mir nach: "Ein Primary Key definiert keine Reihenfolge. Ein
>>Primary Key definiert eine Äquivalenzrelation, die einzigen Operationen,
>>die man auf Primary Keys anwenden kann sind "gleich" und "ungleich"".

"Ein Primary Key definiert keine Reihenfolge. Ein
Primary Key definiert eine Äquivalenzrelation, die einzigen Operationen,
die man auf Primary Keys anwenden kann sind "gleich" und "ungleich""

>>Du bist gerade dabei, einen Primärschlüssel als Ordnungsrelation
>>zu verwenden.

Nein - das war blos als leicht nachzuvollziehendes Beispiel angedacht.
Den PK dafür zu nehmen ist sicherlich nicht gerade vorbildlich gewesen.
Ok, in so fern hast Du recht - zumindest in meinem Beispiel hab ich´s getan.

>>Das klingt wie eine lineare Liste als Programmierstruktur, die Du
>>in SQL nachbilden möchtest.

Oder nimm ein Array. Ein Array mit 5 Elementen zum Beispiel.
Nun möchtest Du dem Array ein Element hinzufügen, und zwar an der Position 2.
Da Position 2 bereits genutzt wird, müssen alle ab und incl. der 2 um eines 
nach hinten versetzt werden, so daß 2 gefüllt werden kann und daß Array jetzt
6 Elemente umfasst.

Änsätze (für Arrays) sind die PHP4 Funktionen array_shift & array_unshift.

Und in SQL :( ... naja .... da muss ich wohl oder übel erst recht 
alle Datensätze parsen und mit UPDATE neue Positionen vergeben.
Das macht mir keine Freude weil ich weiss daß es viele werden.

Holger

---------------------------------------------------------------
Holger Bahr                                            TSi GmbH
hb_(at)_tsi-gmbh.de                                     Neustr. 9-12
02636 9764 22                                   D-53498 Waldorf
http://www.tsi-gmbh.de          New Phone #: +49-(0)2636-9764-0
http://www.waldorf-gmbh.de      New Fax  #: +49-(0)2636-9764-99
---------------------------------------------------------------



php::bar PHP Wiki   -   Listenarchive