nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Re: [lang] Re: Suche über alle Felder

Von: Dominik Echterbruch (news_de@crosslight.de) [Profil]
Datum: 08.07.2008 11:10
Message-ID: <1215508228.12436.1@proxy00.news.clara.net>
Newsgroup: de.comp.datenbanken.mysql
Christoph Herrmann wrote:
>> Wozu? Welchen Vorteil bringt das aus deiner Sicht? Die ID ist völlig
>> aussagefrei (jedenfalls für nicht-Datenbanken). Warum damit Aufwand
>> treiben?
>
> Eine ID ist ein numerisches Feld mit einem fest definierten
> Wertebereich. Wenn du immer hochzählst, bist du irgendwann an der oberen
> Grenze angekommen. Was dann? ;)

Ein BIGINT speichert bis zu 18446744073709551616 verschiedene Werte.
Selbst wenn du nun jede Sekunde 1000 Datenssätze einfügst (was du
sicherlich nicht dauerhaft schaffen wirst), bleiben dir grob
überschlagen 584942417 Jahre. Und zeig mir den Menschen, der dann noch
mit so hoffnungslos veralteter Software arbeiten möchte ;)

> Es ist völlig sinnfrei die ID nicht neu zu vergeben in meinen Augen.

Warum? Nenn mir bitte ein Beispiel.

> Leider gibt es keine mir bekannte Datenbank bei welcher man dies
> definieren kann.

Nicht leider, sondern zum Glück. Allein die von dir geschilderte
Tatsache sollte dir schon verdeutlichen, daß es eine bessere Idee ist,
immer hochzuzählen, egal was passiert.

Aber um dich ein wenig zu erleuchten: MySQL mit den alten ISAM Tabellen
hat so was in der Richtung gemacht. Dort wurde immer die höchste ID
genommen und um 1 inkrementiert. Hast du also 10 Datensätze "am Ende"
gelöscht, entstand keine Lücke. Die Idee war nur so schlecht, daß MySQL
das mit Einführung der MyISAM Tabellen geändert hat.

Grüße,
Dominik
--
Wo kämen wir denn da hin, wenn jeder nur fragte "Wo kämen wir denn
da hin?", aber niemand ginge, um zu sehen, wohin wir kämen, wenn wir
gingen?
(Autor unbekannt)

[ Auf dieses Posting antworten ]

Antworten