sql >> Databasteknik >  >> RDS >> Sqlserver

Öka en bigint-kolumn automatiskt?

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.



  1. Hur kan du se om ett PL/SQL-paket, en procedur eller en funktion används?

  2. MySQL kommandorad och transaktioner

  3. Skillnaden mellan mysql, mysqladmin, mysqld

  4. Oracle 11g-satser för att skapa nya användare och bevilja privilegier?