Wat Is een Uniqueidentifier in SQL?

Wat Is een Uniqueidentifier in SQL?


Een host van eenduidige identificatienummers (hierna aangeduid als "uniqueidentifiers") staan tot uw beschikking wanneer u een database ontwerpt. Sofinummers, telefoonnummers en volgorde nummers kunnen allemaal helpen u organiseren hoofdtabellen. U kan echter hebben detail tabellen hebt die dubbele gegevens bevatten, en hebben geen manier om een bepaalde record te zoeken. Het gegevenstype uniqueidentifier is een industriële sterkte oplossing voor dit probleem. Het garandeert dat elke record in de tabel een unieke waarde die niet wordt gedupliceerd krijgt, zelfs als u dezelfde database op vele verschillende computers gebruikt.

Doel

Bepaalde tabellen in uw database kunnen vele rijen met dubbele gegevens bevatten. Bijvoorbeeld, kan een klant hebben noemde u drie keer op dezelfde dag. Uw "klant call" tabel heeft de datum, de tijd en de klant-ID. Een select-instructie met behulp van een van deze items zal waarschijnlijk vele records geretourneerd. Als u een vierde item voor deze tabel--oproep ID--gebruik van het gegevenstype uniqueidentifier maakt, maakt de computer een unieke waarde automatisch voor elke record. Door het opgeven van oproep-ID in uw select, update en delete-instructies, kunt u afzonderlijke records in de tabel.

Uniciteit

De uniqueidentifier garandeert dat geen twee computers overal ter wereld dezelfde waarde zal opleveren. Naast een willekeurige code gegenereerd door de computer, bevat de id informatie van de netwerkkaart van de computer en CPU kloksnelheid. De gegarandeerde wereldwijde uniciteit is aantrekkelijk voor grote organisaties met databases op vele verschillende computers. Gegevens bewaard op één computer kunnen altijd worden onderscheiden van gegevens op een ander.

Gebruik

Met een unieke waarde in de rij van een tabel kunt u vinden van een entry, de inhoud wijzigen of verwijderen. Als u meerdere exemplaren van dezelfde gegevens met geen unieke id heeft selecteren u slechts één record niet. Dus bijhouden van registers, is afhankelijk van de unieke waarden te geven aan uw records. Terwijl het doen van samenvoegingsreplicatie, een automatische database onderhoud functie, Microsoft SQL Server software zal toevoegen een global unique identifier naar tabellen die niet over een unieke-id. De unieke id verzekert dat de replicatie correct kan worden uitgevoerd.

Nadelen

Het gegevenstype uniqueidentifier is een vrij lang (16-byte) veld die duistere waarden alleen nuttig voor de computer worden gegenereerd. Lezen door middel van het op uw scherm, ziet u geen enig verband tussen de inhoud en de inhoud van andere velden zoals naam, datum of beschrijving. De willekeurige aard betekent dat het niet volgen van een voorspelbaar patroon die u in uw toepassingen gebruiken kunt. Het kost extra tijd voor de server voor het genereren van de uniqueidentifier, maken verwerking langzamer wanneer u toevoegt wordt vastgelegd.

Alternatieven

Als u een record-id die uniek is voor de tabel alleen moet, en hoeft niet te worden unique, is het eenvoudiger om te stellen een integer of lange integer type en stelt u de eigenschap identiteit. Dit resulteert in een kleiner veld, dat is gemakkelijk te lezen. Je kan het gebruiken als een sequentiële volgorde getal of een ander bekend item.