Egyedi azonosító adatok használata
Az egyedi azonosító adattípus 16 bájtos bináris értékeket tartalmaz, amelyek GUID-ek. A GUID egyedülálló bináris szám, és a világon két számítógép nem hoz két azonos értéket a GUID számára. A GUID-eket elsősorban olyan azonosítók hozzárendelésére használják, amelyeknek egyedinek kell lenniük olyan hálózaton belül, amely számos számítógépet tartalmaz különböző helyeken.
Az egyedi azonosító oszlophoz tartozó GUID értékét általában az alábbi módszerek valamelyike képezi.
Transact-SQL utasításban, csomagban vagy scriptben a NEWID funkcióhívás használatával.
Az alkalmazáskódban az API-funkció vagy a GUID visszaadási módjának hívásával.
Egy egyedi azonosító értéke általában nem konstansként definiálható. Az egyedi azonosítót a következő módon lehet megadni.
A karakterformátumban: '6F9619FF-8B86-D011-B42D-00C04FC964FF'
Az egyedi azonosító adattípus nem hoz létre automatikusan új azonosítót a beillesztett sorokhoz, mint az IDENTITY tulajdonság. Például új egyedi azonosító értéket kaphat. A táblázat létrehozásakor meg kell adnia a DEFAULT záradékot. jelezve a NEWID vagy a NEWSEQUENTIALID funkciót. Az INSERT utasításokban a NEWID funkciót is használhatja.
Használhat GUID-ek generálását a NEWSEQUENTIALID függvénnyel, amely lehetővé teszi, hogy csökkentse az oldalütközéseket az indexek végső szintjén. A NEWSEQUENTIALID függvény egy egyedi azonosító táblázat oszlopaira használható, csak a DEFAULT korlátozással.
A uniqueidentifier oszlopok tartalmazhatnak egy adott egyedi azonosító érték többszörös előfordulását. ha nem voltak további korlátozások UNIQUE vagy PRIMARY KEY. Az idegen kulcs oszlop, amely a másik tábla egyedi azonosító típusának elsődleges kulcsjára utal, több egyedi eseményt tartalmaz az egyedi azonosítótípushoz. ha több sor ugyanarra az elsődleges kulcsra utal a forrás táblában.
Az egyedi azonosító adattípusnak számos hátránya van.
Az értékek hosszúak és érthetetlenek. Ezért a felhasználók nehézséget jelentenek hibák nélkül, és még nehezebb emlékezni.
Az értékek véletlenszerűek, nem tartalmazhatnak olyan sorozatokat, amelyek értékesebbé teszik az értékeket a felhasználók számára.
Nem lehet meghatározni, hogy az egyedi azonosító értékek mely sorrendben lettek létrehozva. Nem alkalmazhatók olyan meglévő alkalmazásokhoz, amelyek a sorrendben a kulcsok egymás utáni növekményére vonatkoznak.
16 bájtot elfoglalva az egyedi azonosító adattípus viszonylag nagy, mint más adattípusok (például 4 bájtos egész szám). Az egyedi azonosítótípusú kulcsokra épített indexek. jobban működhet, mint az indexek, ahol int kulcsokat használnak.
Ha nem szükséges globális egyediség, vagy ha kulcsot kell megadni a folyamatosan növekvő értékekkel, akkor ajánlott az IDENTITY tulajdonság használata.