Reiniciar el valor de una columna Identidad en SQL Server

Juan Carlos Heredia
2 min readJan 20

--

Este es uno de los trucos simples que puede parecer obvio y aceptado por aquellos que hemos estado trabajando con SQL Server desde hace un tiempo, pero lo pongo aquí porque estoy seguro que a más de uno que esté iniciándose en esto le puede servir.

De hecho, publico este truco porque de vez en cuando (y esta misma mañana) tengo que restablecer el valor de la columna identidad de nuevo a cero (0) después de haber eliminado todos los registros existentes. La columna identidad es aquel campo que usamos como dato auto numérico para que se auto genere un identificador. En principio no debería importarnos que valor se genera, ya que justamente para eso usamos este campo, pero si a veces queremos empezar nuevamente y empezar a numerar los registros desde 1 (o simplemente por cuestión de gustos).

Tenemos dos opciones:

  • Si queremos eliminar todos los registros (dejar vacía la tabla) y empezar nuevamente, el comando sería
TRUNCATE TABLE nombreTabla
  • El siguiente comando vuelve a iniciar el valor de la identidad a partir de 0 de forma que el siguiente registro que se agregue comience en 1, teniendo en cuenta que si hay otros registros tomará el valor menor inmediato disponible.
DBCC CHECKIDENT('nombreTabla', RESEED, 0)

Si quieres más trucos de este tipo te invito a echarle un vistazo a mi libro de SQL Server en Español

SQL Server
Photo by Rubaitul Azad on Unsplash

--

--

Juan Carlos Heredia

Platform & DevOps Engineer. A fan of technology, photography and music. Stay positively charged ⚡️🔋