Vid daglig SQL Server-utveckling används ofta identitetskolumnen för Identity-typen som det självväxande numret i en tabellstruktur. Till exempel artikelnummer, postserienummer, etc. Referenser till självväxande identifierade kolumner underlättar utvecklingen av databasprogram avsevärt, men ibland kan denna envisa fälttyp också orsaka problem.
1. Ändra fältvärdena i identifikationskolumnen:
Ibland är det nödvändigt att ändra värdet på ett fält av typen Identity self-growing för att implementera en funktion, men denna operation är som standard inte tillåten på grund av typen av identitetskolumn. Till exempel, om det normalt läggs till 5 datastycken i databasen och 2 tas bort vid denna tidpunkt, så kommer den självväxande identifieringskolumnen automatiskt att tilldelas värdet 6 om datan läggs till igen, men om du vill tilldela värdet 3 vid insättning av data är det inte tillåtet som standard. Om du vill ändra värdet på detta fält kan du helt kontrollera insättningen av värdet på identifieringsfältet, det finns fortfarande metoder, haha.
STÄLL IDENTITY_INSERT /[BORD/] [PÅ| FEL] Med ovanstående uttalande kan du enkelt kontrollera om en självväxande identifierarkolumn i en tabell automatiskt växer, det vill säga om du får ange värdet på identifieringskolumnfältet manuellt när du infogar en post. Om det anges som på kan du ange värdet på det identifierande kolumnfältet vid insättning, vilket inte automatiskt ökar det tilldelade värdet. Självklart, om du använder upp den, måste du använda detta uttalande för att stänga av switchen till standardtillståndet, annars kommer fältet inte automatiskt att öka det tilldelade värdet när du lägger in data nästa gång.
2. Återställ fältvärdet i identifikationskolumnen:
När en del av dataposten raderas, och den nya dataposten läggs till senare, kommer värdet på identifieringskolumnen att ha ett stort viloläge, vilket ser mycket obehagligt ut. Även om du raderar alla poster i tabellen kommer värdet på identitetskolumnen att fortsätta öka automatiskt och öka oändligt, istället för att växa från grunden. Frövärdet för det självväxande fältet kan återställas med följande påstående:
DBCC CHECKIDENT(TABELL, [RESEED| NORESEED], [1]) Ovanstående sats tvingar seedvärdet för den angivna tabellen att återställas till 1. Men om du inte vill återställa fröet till 1 kan du ersätta den tredje parametern med det frövärde du vill använda. Om du vill veta det aktuella fröet istället för att återställa det identifierade fröet, måste du använda NORESEED istället för att sätta den tredje parametern. |