En identitetskolonne i SQL Server refererer til en kolonne som auto-genererer en unik numerisk verdi for hver post som er satt inn. En identitetskolonne er veldig nyttig som en primærnøkkel da hver verdi er unik for hver rad.
I denne guiden vil vi forstå hvordan vi bruker identitetsegenskapen i SQL -serveren og hvordan vi manuelt kan sette inn verdier i en identitetskolonne.
SQL Server -identitet
Identitetsegenskapen i en kolonne bestemmes av den første frøverdien og økningen heltall. Syntaksen er som vist:
identitet (frø, økning);
Hvis frø- og økningsparametrene ikke er definert, er SQL Server standardverdier til henholdsvis 1, 1.
Eksemplet spørringsuttalelser illustrerer hvordan du bruker SQL Server Identity -egenskapen:
createTatabasetemplory_db;Vi burde ha et bord som vist:
Legg merke til at ID -kolonnen starter fra en verdi på 1 og trinn neste rad med 1, som definert av identitetsegenskapen.
SQL Server Indentity_Insert
Selv om identitetsegenskapen brukes til å definere en automatisk generat funksjon, kan det være lurt å manuelt redigere verdien av en identitetskolonne.
Det er her Identity_Insert -kommandoen spiller inn.
SQL Server Aktiver Identity_Insert
Som standard vil SQL Server forhindre at du manuelt redigerer verdiene til en identitetskolonne. For å bruke den, må du aktivere det på målbordet ditt.
Hvis du for eksempel prøver å redigere verdiene manuelt i ID -kolonnen fra eksempeltabellen ovenfor, vil du få en feil som vist:
INSERTINTOSEMPLE_TABLE (ID) verdier (7);Bruk følgende kommandosyntaks for å slå identitet_insert -funksjonen av eller på:
setidentity_inserttable_nameon/off;For å slå identitet_insert på for eksempelet som er opprettet ovenfor, kan vi for eksempel gjøre:
setidentity_insertsample_tableon;Når du er aktivert, kan du sette inn verdier i identitetskolonnen:
INSERTINTOSEMPLE_TABLE (ID) verdier (7);HINT: Du kan bare angi identitet_insert på en enkelt bord per økt. Hvis du prøver å aktivere identitetsinnsats på en annen tabell i samme økt, vil SQL -serveren returnere en feil som vist:
Konklusjon
SQL Server Identity-egenskapen tillater å definere en kolonne som automatisk genererer numeriske verdier basert på frø- og økningsverdiene. Som diskutert i denne opplæringen, kan du imidlertid bruke identitetsinnsatsen for å manuelt redigere verdiene til en identitetskolonne. Vi håper du fant denne artikkelen nyttig. Sjekk ut andre Linux -hint -artikler for flere tips og informasjon.