I daglig SQL Server-udvikling bruges identitetskolonnen for Identity-typen ofte som det selvvoksende tal i en tabelstruktur. For eksempel artikelnummer, postserienummer osv. Henvisninger til selvvoksende identificerede kolonner letter udviklingen af databaseprogrammer betydeligt, men nogle gange kan denne stædige felttype også give problemer.
1. Ændr feltværdierne i identifikationskolonnen:
Nogle gange er det nødvendigt at ændre værdien af et felt af typen Identity self-growing for at implementere en funktion, men denne operation er ikke tilladt som standard på grund af typen af identitetskolonnen. For eksempel, hvis der normalt tilføjes 5 datastykker i databasen, og 2 slettes på dette tidspunkt, vil dataene automatisk blive tildelt værdien 6, hvis dataene tilføjes igen, men hvis du vil tildele værdien 3 ved indsættelse af data, er det ikke tilladt som standard. Hvis du vil ændre værdien af dette felt, kan du fuldstændig kontrollere indsættelsen af værdien af identifikationsfeltet, der findes stadig metoder, haha.
SÆT IDENTITY_INSERT /[BORD/] [PÅ| OFF] Ved at bruge ovenstående sætning kan du nemt kontrollere, om en selvvoksende identifikatorkolonne i en tabel automatisk vil vokse, det vil sige, om du manuelt må angive værdien af identifikatorkolonnefeltet, når du indsætter en post. Hvis det er angivet som på, kan du angive værdien af det identificerende kolonnefelt ved indsættelse, hvilket ikke automatisk øger den tildelte værdi. Selvfølgelig, hvis du bruger den op, skal du bruge denne sætning til at slå switchen til standardtilstanden fra, ellers vil feltet ikke automatisk øge den tildelte værdi, når du indsætter data næste gang.
2. Nulstil feltværdien i identifikationskolonnen:
Når en del af dataposten slettes, og den nye datapost tilføjes senere, vil værdien af identifikationskolonnen have et stort inaktivt interval, hvilket ser meget ubehageligt ud. Selv hvis du sletter alle poster i tabellen, vil værdien af identitetskolonnen fortsætte med at stige automatisk og stige uendeligt, i stedet for at vokse fra bunden. Frøværdien af det selvvoksende felt kan nulstilles ved at bruge følgende udsagn:
DBCC CHECKIDENT(TABEL, [RESEED| NORESEED], [1]) Ovenstående sætning vil tvinge seed-værdien for den angivne tabel til at nulstilles til 1. Men hvis du ikke vil nulstille frøet til 1, kan du erstatte den tredje parameter med den frøværdi, du vil bruge. Hvis du vil kende det aktuelle seed i stedet for at nulstille det identificerede seed, skal du bruge NORESEED i stedet for at sætte den tredje parameter. |