Reiniciar el valor de una columna Identidad en SQL Server

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

SQL Server
Photo by on

--

--

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

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Juan Carlos Heredia

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