¿Cómo agregar autoincrement a una llave primaria cuando ya está relacionada a otras tablas? #mysql #constraint #foreign

Cuando tenemos una llave primaria la cual está relacionada a otras tablas y deseamos ponerla como autoincrement (ya sea porque se nos pasó en el diseño o por x circunstancia), debemos poner el valor 0 a la variable de mysql FOREIGN_KEY_CHECKS y para ello lo podemos hacer de la siguiente manera:

SET FOREIGN_KEY_CHECKS = 0;

Y para volverla a activar:

SET FOREIGN_KEY_CHECKS = 1;

Y así nos quedaría nuestra instrucción completa, incluyendo la consulta que hace la llave primaria que se autoincremente:


SET FOREIGN_KEY_CHECKS = 0;

ALTER TABLE `nombreTabla`
MODIFY COLUMN `idTabla`  int(11) NOT NULL AUTO_INCREMENT;

SET FOREIGN_KEY_CHECKS = 1;

Autor: Héctor de León

Desarrollador de software, lector compulsivo.