Limite supérieure pour l'incrémentation automatique de la clé primaire dans SQL Server
Ce qui est la limite supérieure pour une incrémentation automatique de la clé primaire dans SQL Server?
Ce qui se passe quand un Serveur SQL de type autoincrement clé primaire atteint sa limite supérieure?
Vous devez vous connecter pour publier un commentaire.
Joel réponse est bonne, c'est la limite supérieure de ce type de données que vous utilisez.
Voici un exemple de deux d'entre eux:
En fait, j'ai frappé à la limite à un emploi, j'ai travaillé à. L'erreur est:
Il y a quelques corrections à ce que je peux penser à du haut de ma tête. Le numéro 1 est probablement très difficile et pas très probable, le nombre 2 est facile, mais sera probablement causer des problèmes dans votre base de code.
Il y a probablement d'autres corrections, mais il n'y a pas de solution miracle facile. J'espère juste que cela ne se produise pas dans un tableau qui est le centre d'un tas de relations, parce que si c'est le cas, vous êtes dans beaucoup de douleur. Il n'est pas difficile de résoudre, juste une tâche fastidieuse et longue.
Cela dépend du type de données. Si vous utilisez le type de données bigint, vous avez peu de chances de jamais de débordement. Même un normal int vous donne quelques milliards de lignes. Je n'ai jamais débordé, donc je ne peux pas vous dire ce qui se passe si vous n'.
Je vais vous dire ce qui se passe.... mes données cessé de les insérer dans cette table spécifique. La base de données fonctionne toujours mais j'ai trouvé des données manquantes et incohérent. Avec un peu de recherche, j'ai trouvé l'erreur de la table, puis a couru une insertion manuelle. L'erreur est la même que ci-dessus.
Dû changer la colonne de type BIGINT. Sur un 26GB base de données sur un peu lent, serveur, a pris environ 30 minutes. Sur l'archive de la version de la base de données (150 GO ou plus), il a fallu un peu plus longtemps.
Heureusement, pas trop de relations pour cette table de sorte que la douleur était assez légère.
Types de données des descriptions:
Lorsque vous atteignez la limite supérieure de l'auto-incrémentation va à la limite inférieure.
DBCC CHECKIDENT (SomeTable, RESEED, 1)
Cela réinitialise l'identité à 1 sur la table 'SomeTable'
Ne sais pas si c'est la meilleure façon de le faire.