2014-12-07 4 views
0

Вот мой текущий дизайн таблицы:Ошибка изменения столбца MySQL для AUTO_INCREMENT

enter image description here

У меня есть несколько столбцов и не устанавливаются ни одна из кнопок, поэтому, когда я пытаюсь следующая команда:

ALTER TABLE users MODIFY COLUMN id INT auto_increment; 

его дает мне ошибку. Я хочу, чтобы столбец id в таблице автоматически увеличивался, и я хочу, чтобы он начинался с 1.

+1

какая ошибка вы получаете? – markus

+1

какая именно ошибка дает вам? –

+0

Как насчет 'alter table users change id id int primary KEY AUTO_INCREMENT;' –

ответ

1

Я думаю, что вам не хватает определения первичного ключа. Попробуйте это:

ALTER TABLE users MODIFY id INT AUTO_INCREMENT PRIMARY KEY 

Кроме того, я рекомендую вам проверить this аут.

+1

Хороший ответ. Это должно сработать. Я думаю, что также важно упомянуть, что причина, по которой это требуется, состоит в том, что столбец * CAN NOT * является auto_increment, если он не является Первичным ключом. В случае OP id не является ключом, поэтому он не может быть изменен только в auto_increment. – AdamMc331

+0

Также, забавная вещь, которую нужно отметить (поскольку вы спросили в комментариях), я считаю, что ошибка OP получается: «Ошибка создания схемы: неверное определение таблицы; может быть только один автоматический столбец, и он должен быть определен как ключ: ' – AdamMc331

0

Вы должны указать PRIMARY_KEY с AUTO_INCREMENT:

ALTER TABLE users MODIFY id INT PRIMARY_KEY AUTO_INCREMENT; 
Смежные вопросы