Mailinglisten-Archive |
Cyrill Schumacher schrieb am Mittwoch, den 22. September 1999: > Fügt man eine neue Zeile in eine Tabelle ein, dann wird > diese Zeile wo angehängt ? Irgendwo! Denn ein Grundprinzip von relationalen Datenbanken ist, daß die Datensätze einer Tabelle keine festgelegte Reihenfolge haben, sondern nur durch ihren Schlüssel identifiziert werden. Eine feste Ordnung bekommen sie nur bei der Ausgabe durch ORDER BY, die interne Speicherordnung ist nicht festgelegt. Natürlich ist es jetzt so, daß MySQL die Datensätze intern schon in einer bestimmten Reihenfolge speichert - und das ist genau die Reihenfolge, die Du bekommst, wenn Du ein SELECT * FROM tabelle; machst. Neue Datensätze fügt MySQL intern am ersten freien Platz ein; meist ist das am Ende, außer es sind durch DELETEs Lücken entstanden (hier muß das Aha kommen! :-). Aber: Du solltest Dich prinzipiell nie auf eine solche interne Reihenfolge verlassen! Sowas kann schon in der nächsten MySQL- Version anders aussehen ... Deshalb besser immer ORDER BY, wenn die Reihenfolge wichtig ist. Ciao, Martin -- Martin Ramsch <m.ramsch_(at)_computer.org> <URL: http://home.pages.de/~ramsch/ > PGP KeyID=0xE8EF4F75 FiPr=52 44 5E F3 B0 B1 38 26 E4 EC 80 58 7B 31 3A D7 --- *** Abmelden von dieser Mailingliste funktioniert per E-Mail *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive