Autor Beitrag
mcst09
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 112



BeitragVerfasst: Mi 04.01.06 22:06 
Hallo,

gibt es eine möglichkeit, eine GUID bzw. eine weltweit einmalige zahl zu kreieren, aber im datenformat integer?
eine GUID kann man ja als string erzeugen, aber das hilft mir nicht weiter. auch ein umwandeln bringt mir nichts.

kennt jemand eine möglichkeit?

axl


Moderiert von user profile iconGausi: Topic aus VCL (Visual Component Library) verschoben am Do 05.01.2006 um 13:01
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Do 05.01.06 09:09 
Nein. Ist nicht möglich.

Du hast bei Integer nur 2^32 Möglichkeiten und dies sind definitiv viel zu wenig Möglichkeiten um hierauf eine wahrscheinlich eindeutige ID zu generieren. Du könntest Integer (Int32) nicht mal verwenden um jedem Menschen auf der Erde eine eindeutige ID zu geben.

Genau für solche Anforderungen wurden GUID's definiert. Und nicht umsonst sind GUID's 16 Bytes groß.
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Sa 07.01.06 15:03 
Und wie sieht es mit Extended aus?

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Sa 07.01.06 18:17 
user profile iconGTA-Place hat folgendes geschrieben:
Und wie sieht es mit Extended aus?

Um 2^48 schlechter als bei einer GUID :-)
Und vor allem. Du müstest den GUID-Zugrundeliegenden Algorithmus abspecken das er mit 6 Byte weniger zurecht kommt.

Annahme: Du nimmst die Mac-Adresse (6 Byte) als ein Teil der eindeutigen Nummer. Anschließend den Zeitstempel im Unix-Zeitformat (4 Byte). Damit könntest Du zwischen 1970 und ca. 2100 jede Sekunde einen neuen eindeutigen Wert erzeugen. Ab was ist wenn du alle ms einen neuen Wert benötigst? ...