Saltar al contenido

MySQL Auto_increment va 2 por 2

Solución:

El prefijo que se utilizó:

SET @@auto_increment_increment=1;

Es lo mismo que:

SET @@SESSION.auto_increment_increment=1;

Al modificar esta configuración, solo se vuelve relevante en su sesión actual.

Para hacer una solución más permanente, intente:

SET GLOBAL auto_increment_increment=1;

Es lo mismo que:

SET @@GLOBAL.auto_increment_increment=1;

Ambas variables tienen valores globales y de sesión. Por lo tanto, es muy probable que solo haya cambiado el valor de la sesión, que desapareció cuando cerró MySQL Workbench.

Otra advertencia a la que hay que prestar atención es que

estas variables controlan el comportamiento de todas las columnas AUTO_INCREMENT en todas las tablas del servidor MySQL. Si se establece el valor global de cualquiera de las variables, sus efectos persisten hasta que el valor global se cambia o se anula estableciendo el valor de la sesión, o hasta que se reinicia mysqld. Si se establece el valor local, el nuevo valor afecta a las columnas AUTO_INCREMENT para todas las tablas en las que el usuario actual inserta nuevas filas durante la sesión, a menos que los valores se cambien durante esa sesión.

Lo que también podría engañarlo es la forma en que se calcula el siguiente valor de autoincremento cuando cambia el tamaño del incremento. No usa el último valor de columna almacenado, pero está calculando el siguiente valor más alto usando la fórmula

auto_increment_offset + N × auto_increment_increment

mientras que N es un número entero, por lo que el nuevo valor es mayor que el mayor existente.

Vea la documentación auto_increment_increment cómo funciona en detalle.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *