SQL Server GUID

SQL Server GUID
I dette innlegget lærer vi hvordan du bruker unik identifiseringstypen i SQL Server. Vi vil også bruke NewID () og New SequiensId () -funksjonene for å generere GUID -verdier.

SQL Server UniqueIdentifier Type

Dette er en 16-byte guidverdi brukt i en kolonne eller en lokal variabel. Du kan opprette en unik identifikersydeverdi ved hjelp av NewID () og New SequiNentialID () -funksjonene.

Du kan også generere en GUID-verdi ved å konvertere en strengverdi i formatet xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx hvor x er et heksadekimal siffer i området 0-9.

På grunn av "tilfeldighet" av en guidverdi, er det garantert at en guidverdi kan være unik på tvers av en database eller til og med servere. Dette gir en utmerket datatype for unikt identifisering av en gitt verdi.

SQL Server NewID () -funksjon

NewID () -funksjonen lar oss generere en ny unik verdi av unike identifiseringstypen. Syntaksen er som vist:

Newid ()

For eksempel:

erklære @gid unike identifiserer;
set @gid = newid ();
Velg @Gid som GID;

Ovennevnte uttalelser skal returnere en guidverdi som:

gid
873412E2-A926-4EAB-B99F-A1E47E727355

SQL Server New SequiensIdID () -funksjonen

Denne funksjonen lar deg generere unike GUID -verdier sekvensielt. Det fungerer ved å generere en guidverdi som er større enn den tidligere genererte GUID.

Dette gjør det nyttig for bruk som radidentifikator siden det genererer verdier sekvensielt i stedet for manuelt å bestemme den neste GUID -verdien ved å bruke NewID () -funksjonen.

Funksjonssyntaksen er som vist:

New SequientInid ()

Bruker SQL Server GUID som radidentifikator

Følgende eksempel viser hvordan du bruker New SequiNentID () -funksjonen som en radidentifikator for en gitt kolonne.

Lag bordoppføringer (
id unikidentifiserer ikke null standard new SequiensId () primærnøkkel,
Server_name varchar (50),
server_address varchar (255) ikke null,
kompresjon_metod varchar (100) standard 'ingen',
size_on_disk float ikke null,
Size_Compription Float,
total_records int ikke null,
init_date dato
);
sett inn
inn i
Oppføringer (servernavn,
server adresse,
komprimering_metod,
størrelse_on_disk,
størrelse_komprimert,
Total_records,
init_date)
verdier
('Mysql', 'localhost: 3306', 'lz77', 90.66,40.04.560000, '2022-01-02'),
('Redis', 'Localhost: 6307', 'Snappy', 3.55.998.2.100000, '2022-03-19'),
('PostgreSql', 'localhost: 5432', 'pglz', 101.2,98.01,340000, '2022-11-11'),
('Elasticsearch', 'Localhost: 9200', 'LZ4', 333.2.300.2.1200000, '2022-10-08'),
('Mongodb', 'Localhost: 27017', 'Snappy', 4.55,4.10.620000, '2021-12-12'),
('Apache Cassandra', 'Localhost: 9042', 'Zstd', 300.3.200.12.10000000, '2020-03-21');

I eksemplet ovenfor setter vi ID -kolonnen som unik identifiseringstype og standardverdien som verdien generert av New SequiNentID () -funksjonen.

Det resulterende tabellen er som vist:

Velg * fra oppføringer;

Produksjon:

Selv om bruk av GUID -verdier kan gi streng unikhet, kan det være vanskelig når du feilsøker eller velger spesifikke verdier.

Konklusjon

I denne guiden lærte du om UniqueIdentifier -typen i SQL Server. Du lærte også hvordan du genererer GUID -verdier ved hjelp av NewID () og New SequiensentID () -funksjonene.