2009-06-12 22 views
15

En una tabla, tengo una columna de ID, que es una Identidad int.Aumentar el valor de una columna de identidad en SQL Server sin descartar y volver a crear la tabla

¿Cómo puedo hacer para que la siguiente fila insertada obtenga la identidad 10000 (creo que esto se llama la semilla de identidad) - sin soltar y volver a crear la tabla?

Necesito hacer esto debido a un problema de exclusividad con un servicio externo al que accede la aplicación.

+0

Por favor marque con este enlace y tratar http://www.codeproject.com/Tips/668042/SQL-Server-Auto-Identity-Column-Value-Jump-Is –

Respuesta

36
DBCC CHECKIDENT (yourtable, reseed, 9999) 

Esto hará que la próxima entrada 10000.

+0

Puedo estar fuera de uno aquí, no recuerdo. – TheTXI

+0

10000 o 10001 no importa en este caso, su código funciona, ¡gracias! :) – Kjensen

+0

Al hacerlo a través de la GUI se baja y se recrea la tabla, lo sé porque eso es lo que hice antes de hacer la pregunta, y recibí una advertencia en mi cara. ;) – Kjensen

4

Esto debe hacerlo:

DBCC CHECKIDENT (MyTableName, RESEED, 9999) 
+0

Eso hará que la siguiente entrada sea 10001. Cometí el mismo error anteriormente. – TheTXI

+0

@TheTXI - Estás en lo correcto y lo he actualizado en consecuencia. Gracias. – Matt

Cuestiones relacionadas