![]() Mailinglisten-Archive |
Hallo! Am Freitag, 28. September 2001 00:48 schrieb Pete 'Baldur' Hillebrand: > ich habe eine Tablle mit einer id-spalte die auto_icrement ist. > Wenn ich eine Zeile l�sche (z.b. 101), und danach eine neue einf�gen lasse, > dann bekommt die n�chtste Zeile nicht den h�chsten freien Wert, sondern > einen wert, der noch nicht vergeben wurde (also 102), was ja auch vom > Prinzip her sinn machen kann. Das die 102 ausgew�hlt wird macht Sinn, den genau das sorgt f�r die Integrit�t Deiner Datenbank/Daten/Datens�tze. Das ganze ist ein Konzept. > Allerdings m�chte ich, auch wenn aus der Mitte eine Zeile gel�scht wird, > dass mit Hilfe von auto_increment die "L�cken gef�llt" werden. Wozu sollen den die L�cken eingef�llt werden? St�rt Dich eine L�cke von zum Beispiel 100 -> 700? Befreie Dich von dem Gedanke, das es in den ID's keine L�cken geben darf, weils sch�ner aussieht. Es ist egal, den jedes Programm sollte so flexibel geschrieben sein, da� solche L�cken egal sind. Der Datenbank ist es auf alle F�lle egal. > K�nnt ihr mir da einen Fingerzeig geben ?! Die einzige L�sung ist, die Spalte auszulesen, die h�chste ID/Zahl zu ermitteln und dann schauen, welche ID/Zahl frei ist. Wenn Du die hast, verwendest Du ein Insert und gibst die ID bzw. freie ID mit an. Aber sobald Du mal eine relationale Datenbank aufbaust, mit mehr als einer Tabelle, wo mehrere Tabellen "zusammen h�ngen", also Datens�tze "von einander abh�ngig sind", kann das ins Auge gehen. MfG, Andr� Laugks --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive