Oba NEWID()
a NEWSEQUENTIALID()
zadejte globálně jedinečné hodnoty typu uniqueidentifier
.
NEWID()
zahrnuje náhodnou aktivitu, takže další hodnota je nepředvídatelná a její provedení je pomalejší.
NEWSEQUENTIALID()
nezahrnuje náhodnou aktivitu, takže dá se předvídat další vygenerovaná hodnota
(nesnadno!) a spouští se rychleji než NEWID()
.
Pokud se tedy nebojíte předpovídat další hodnotu (z bezpečnostních důvodů), můžete použít NEWSEQUENTIALID()
. Pokud máte obavy z předvídatelnosti nebo vám nevadí malá penalizace výkonu, můžete použít NEWID()
.
V přísném slova smyslu však stále existuje zanedbatelná šance, že GUID generované různými stroji mají stejnou hodnotu. V praxi je to považováno za nemožné.
Pokud chcete další informace, přečtěte si toto:Která metoda generování identifikátorů GUID je nejlepší pro zajištění skutečně jedinečného identifikátoru GUID?
Poznámka NEWID()
vyhovuje RFC 4122
. A druhá funkce používá pro generování hodnoty algoritmus společnosti Microsoft.