Como resetear el autoincremental en mysql

Cuando se trabaja con bases de datos MySQL es habitual utilizar los autoincrementales para crear las claves primarias de las tablas de datos. Este tipo de campos lo que hacen es asignar un entero diferente a cada nuevo registro, añadiendo 1 al anterior valor asignado, empezando por el 1. Por lo tanto, si borramos toda la información de la tabla y generamos un nuevo registro podremos comprobar como no obtiene un 1 sino el valor que hubiera correspondido antes de borrar los registros.

Si necesitamos borrar la tabla y resetear este número para reiniciar la numeración en 1 la opción más sencilla es ejecutar la siguiente sentencia SQL.

TRUNCATE nombre_tabla;

Esta instrucción vacía la tabla y resetea el autoincremental a su valor inicial.

Si lo que queremos es hacer que el valor autoincremental tome un valor determinado es posible utilizar la siguiente sentencia, que modifica la tabla cambiando el valor de autoincremento a 1000 (o al valor que queramos). Hay que tener en cuenta que este número debe ser mayor que cualquier id de la tabla.

ALTER TABLE nombre_tabla AUTO_INCREMENT=1000

Agradecimiento a Demiurgo y Narion por aportar la opción de Truncate en vez de alterar la tabla asignando un 1 al autoincremental.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s