Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Que se passe-t-il dans SQL 2005 lorsqu'il n'y a plus de nombre pour une colonne de numérotation automatique ?

Vous obtiendrez une erreur de dépassement lorsque la valeur maximale sera atteinte . Si vous utilisez le type de données bigint avec une valeur maximale de 9,223,372,036,854,775,807 ce ne sera probablement jamais le cas.

Le message d'erreur que vous obtiendrez ressemblera à ceci :

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

(Source)

Autant que je sache, MS SQL ne fournit aucune fonctionnalité pour combler les lacunes d'identité, vous devrez donc soit le faire vous-même, soit modifier le type de données de la colonne d'identité.

En plus de cela, vous pouvez définir la valeur de départ sur le plus petit nombre négatif, pour obtenir une plage de valeurs encore plus large à utiliser.

Voici un bon article de blog sur ce sujet .