sql >> Database >  >> RDS >> Sqlserver

Wat gebeurt er in SQL 2005 als het aantal voor een kolom met automatische nummering opraakt?

U krijgt een overloopfout wanneer de maximale waarde is bereikt . Als u het datatype bigint gebruikt met een maximale waarde van 9,223,372,036,854,775,807 dit zal hoogstwaarschijnlijk nooit het geval zijn.

De foutmelding die u krijgt, ziet er als volgt uit:

Msg 220, Level 16, State 2, Line 10
Arithmetic overflow error for data type tinyint, value = 256.

(Bron)

Voor zover ik weet biedt MS SQL geen functionaliteit om de identiteitslacunes op te vullen, dus u zult dit ofwel zelf moeten doen of het datatype van de identiteitskolom moeten wijzigen.

Daarnaast kunt u de startwaarde instellen op het kleinste negatieve getal, zodat u een nog groter bereik aan waarden kunt gebruiken.

Hier is een goede blogpost over dit onderwerp .



  1. sql bovenliggende kindboom met sorteervolgorde

  2. MySQL de juiste syntaxis om te gebruiken in de buurt van '' op regel 1 fout

  3. Doctrine 2 SUM() equivalente helper?

  4. Hoe MySQL-database te verbinden met PHP-website