Kan du ikke bare erklære det som en IDENTITY-kolonne:
[ID] [bigint] IDENTITET(1,1) IKKE NULL;
1,1 refererer til startindekset og det beløb, det øges med.
BEMÆRK:Du behøver ikke angive en værdi for ID-kolonnen, når du laver en indsættelse. Det vil automatisk vælge det. Du kan ændre disse værdier senere, hvis det er nødvendigt.
EDIT:
Alternativt du kan bruge en lagret procedure til at håndtere alle indlæg.
Eksempel:
Lagret procedure vil tage variabler ind, som du ville have en normal indsættelse (én variabel for hver kolonne). Logikken i den lagrede procedure kan vælge den maksimale værdi, der aktuelt findes i tabellen, og vælge den som dens maksimale værdi.
DECLARE @yourVariable = SELECT MAX(ID) FROM YourTable
Brug @yourVariable som din indsættelsesværdi. Du kan øge den eller ændre værdien efter behov.