
En muchas ocasiones, cuando estamos diseñando nuestra base de datos, solemos dar a ciertas claves primarias numéricas el atributo de autoincremental. Con esto, lo que hacemos es que cada vez que se añada un nuevo registro, no tenemos que añadir el valor de dicha clave primaria a la sentencia de inserción, siendo MySQL el que automáticamente añada dicho valor por nosotros. Este valor irá incrementándose unitariamente conforme vayamos insertando registros.
MySQL guarda el siguiente valor que se asignará a dicho campo en la siguiente inserción. Pero, ¿qué ocurre si queremos inicializar este valor? Es lógico que, al estar asignado este atributo a la clave primaria, el inicializarlo es una locura, ya que al realizar nuevas inserciones habrá errores de registros con clave duplicada.
Pero es posible que aún estemos en la fase de desarrollo o preproducción de nuestra base de datos y queramos reiniciar la tabla, eliminando todos los registros e inicializando el valor autoincremental, o también puede ser que quieras hacer que este valor comience desde un determinado número. Para ello, la siguiente sentencia en MySQL hace que puedas modificar el valor inicial del campo autoincremental (auto_increment) en una tabla de tu base de datos.
1 | ALTER TABLE nombreTabla AUTO_INCREMENT = nuevoValor; |
donde nombreTabla indica el nombre de la tabla a la cual quieres modificar dicho atributo, y nuevoValor indica el valor que quieres darle.
Si por ejemplo tenemos una tabla llamada usuarios a la que queramos modificar el atributo autoincremental de la clave primaria a 10001, lo haríamos de la siguiente forma:
1 | ALTER TABLE usuarios AUTO_INCREMENT = 10001; |
Si usas algún programa de gestión de bases de datos MySQL, normalmente en la ventana de diseño o estructura de la tabla suele encontrarse una opción para poder modificar este valor sin tener que recurrir a sentencias SQL. Todo dependerá de la aplicación que uses para ello.
