Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Sind GUID-Kollisionen möglich?

Grundsätzlich nein. Ich glaube, jemand hat in Ihrer Datenbank herumgepfuscht. Abhängig von der Versions-GUID, die Sie verwenden, ist der Wert entweder eindeutig (für Dinge wie Version 1-GUIDs) oder sowohl eindeutig als auch unvorhersehbar (für Dinge wie Version 4-GUIDs). Die Implementierung von SQL Server für ihre NEWID()-Funktion scheint eine 128-Bit-Zufallszahl zu verwenden, sodass Sie keine Kollision bekommen werden.

Für eine Kollisionswahrscheinlichkeit von 1 % müssten Sie etwa 2.600.000.000.000.000.000 GUIDs generieren.