Для хорошего обзора того, что такое GUID, проверьте нашего хорошего друга Википедия: GUID .
и действительно ли он уникален
GUID, сгенерированные с одной и той же машины, практически гарантированно являются уникальными.У вас бесконечно малый шанс сгенерировать один и тот же дважды на одной и той же машине.Возможно, у вас есть крошечный шанс сгенерировать два одинаковых идентификатора GUID в более широком мире, но этот шанс все еще невелик, и вероятность того, что эти два GUID когда-либо встретятся, также довольно мала.На самом деле у вас, вероятно, больше шансов, что Большой адронный коллайдер создаст черную дыру, которая поглощает Землю, чем если бы вы имели два идентичных идентификатора GUID, встречающихся где-то в сети.
Из-за этого некоторым людям нравится использовать его.в качестве первичного ключа для таблиц базы данных.Лично я не люблю это делать, потому что:
- автоматически увеличивающееся целое число дает мне достаточно уникальности, чтобы использовать его в качестве первичного ключа
- GUID - это массивная PITAиметь дело с тем, когда вы пишете SQL-запросы.
Вики сказала, что раньше использовала класс, интерфейс с уникальным идентификатором
Если вам нужен уникальный идентификаторв нескольких разрозненных областях (например, кусты в реестре), тогда GUID - это хорошее решение.В этом конкретном случае они используются для идентификации типа.Конкретный экземпляр может также внутренне использовать идентификатор GUID, но это действительно полезно только для объектов данных.