Kan du inte bara deklarera det som en IDENTITY-kolumn:
[ID] [bigint] IDENTITET(1,1) INTE NULL;
1,1 hänvisar till startindexet och det belopp som det ökas med.
OBS:Du behöver inte ange ett värde för ID-kolumnen när du infogar. Det kommer automatiskt att välja det. Du kan ändra dessa värden senare om det behövs.
EDIT:
Alternativt du kan använda en lagrad procedur för att hantera alla inlägg.
Exempel:
Lagrad procedur kommer att ta in variabler på samma sätt som en normal infogning (en variabel för varje kolumn). Logiken i den lagrade proceduren kan välja det maxvärde som för närvarande finns i tabellen och välja det som dess maxvärde.
DECLARE @yourVariable = SELECT MAX(ID) FROM YourTable
Använd @yourVariable som ditt infogningsvärde. Du kan öka det eller ändra värdet efter behov.