sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo agregar una clave principal de incremento automático en función de un orden de columna?

Tenga en cuenta que la tabla MySQL solo puede tener una columna con AUTO_INCREMENT atributo.

Suponiendo que la tabla no tiene una clave principal :

ALTER TABLE table_name ADD COLUMN new_id INT NOT NULL;
SET @x = 0;
UPDATE table_name SET new_id = (@x:[email protected]+1) ORDER BY whateveryouwant ASC;
ALTER TABLE table_name ADD PRIMARY KEY new_id (new_id);
ALTER TABLE table_name CHANGE new_id new_id INT NOT NULL AUTO_INCREMENT;

Suponiendo que la tabla ya tiene una clave principal NO incrementada :

Simplemente omita el PRIMARY palabra clave en el cuarto comando.