sql-server-2008-r2 - ident_current - sql server delete and reset identity
Restablecer la autoincrementación en Microsoft SQL Server 2008 R2 (2)
Si usa el comando DBCC CHECKIDENT
:
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1);
¡Pero utilízalo con PRECAUCIÓN! - Esto simplemente restablecerá la IDENTITY
a 1 - por lo que sus próximos insertos obtendrán los valores 1, 2 y luego 3 -> ¡y aquí tendrá un choque con su valor preexistente de 3!
IDENTITY
simplemente reparte los números en orden consecutivo - de ninguna manera asegura que no haya conflictos! Si ya tiene valores, ¡ no vuelva a resembrar a un valor inferior!
Creé una clave principal para ser autoincrement.
- Agregué dos filas:
ID=1, ID=2
- Eliminé estas dos filas.
- Agregué una nueva fila, pero la ID de la nueva fila era:
ID=3
¿Cómo puedo restablecer o reiniciar el autoincrement a 1?
Estoy usando SQL Server 2012 y DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1)
causa un valor de 2
en la próxima inserción.
Entonces, para SQL Server 2012, cambie el 1
a 0
para obtener un valor de 1
para su siguiente inserción de registros:
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 0); -- value will be 1 for the next record insert