2009-09-25 10 views
25

Actualmente, cada vez que agrego una entrada a mi base de datos, el valor de incremento automático aumenta en 1, como debería. Sin embargo, es solo en el recuento de 47. Por lo tanto, si agrego una nueva entrada, será 48, y luego otra será 49 etc.¿Cambiar el conteo actual de un valor Incremento automático en MySQL?

Quiero cambiar el contador actual de Incremento automático en . Es decir. Quiero cambiarlo de 47 a decir, 10000, para que el siguiente valor ingresado sea 10001. ¿Cómo lo hago?

Respuesta

69

Puede utilizar ALTER TABLE para establecer el valor de una columna AUTO_INCREMENT; citando que la página:

Para cambiar el valor del contador AUTO_INCREMENT que se utilizará para nuevas filas, haga lo siguiente:

ALTER TABLE t2 AUTO_INCREMENT = value; 

También hay una nota que dice que:

No puede restablecer el contador a un valor inferior o igual a cualquiera que ya se haya usado.
Para MyISAM, si el valor es menor o igual que el valor máximo actualmente en la columna de la AUTO_INCREMENT, el valor es de reposición a la corriente máxima más uno.
Para InnoDB, si el valor es inferior a el valor máximo actual en la columna , no se produce ningún error y el valor de secuencia actual no se cambia.

Espero que ayude!

+1

me gustaría mencionar que solo puede cambiar 'AUTO_INCREMENT' a un número concreto. Las expresiones no están permitidas. Intenté "omitir" algunos valores con 'ALTER TABLE t2 AUTO_INCREMENT = + value' y' ALTER TABLE t2 AUTO_INCREMENT = AUTO_INCREMENT + value' pero ambos dieron como resultado un error que me pareció un poco extraño. Versión de MySQL '5.6.33' – mrun

+0

intento esto pero no funciona –

12

consulte el manual para ALTER TABLE - esto debe hacerlo:

ALTER TABLE [tablename] AUTO_INCREMENT = [number] 
7

puede hacerlo bien mediante la ejecución del siguiente declaración

ALTER TABLE t2 AUTO_INCREMENT = 10000; 

Así que la próxima clave de incremento automático se iniciará desde el 10001.

espero que esto va a resolver el problema

+7

¿Por qué repitió una respuesta ya dada e incluyó un enlace de correo no deseado? Por favor no hagas eso. El saludo no es necesario (su nombre ya aparece debajo de la publicación) y el envío de correos basura tampoco (solo colóquelo en su perfil de usuario). – BalusC

Cuestiones relacionadas