Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como adicionar chave primária de incremento automático com base em uma ordem de coluna?


Observe que a tabela MySQL pode ter apenas uma coluna com AUTO_INCREMENT atributo.

Supondo que a tabela não tenha uma chave primária :
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;

Supondo que a tabela já tenha uma chave primária NÃO incrementada :

Apenas omita o PRIMARY palavra-chave no quarto comando.