Бывают такие ситуации, когда в какой-либо таблице вместо первичного ключа с автоинкрементым значением используется что-то другое, например уникальное строковое значение. Но рано-или поздно возникает потребность в доступе к этой таблице по числовому первичному ключу. И чтобы изменить первичный ключ и заполнить его значениями нужно прибегнуть к такой хитрости:
ALTER TABLE mytable DROP PRIMARY KEY;
ALTER TABLE mytable ADD id INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;