Создание новой строки в базе данных MySQL, заполненной числом - PullRequest
0 голосов
/ 04 октября 2011

У меня есть таблица MySQL с 1200 записями, но теперь у меня проблема ...

Мне нужно создать новое поле с именем index в каждой строке, содержащей цифры 1-1200.

Ввод их вручную займет некоторое время, и я бы предпочел, чтобы запрос сделал это, если это возможно

Любая помощь приветствуется

Ответы [ 3 ]

2 голосов
/ 04 октября 2011

Обновление таблицы x set index = id;если у вас есть идентификатор в качестве значения автоинкремента

2 голосов
/ 04 октября 2011

Возможно, это не лучший способ сделать это для большого количества записей, но здесь вы имеете дело с небольшим числом.Вы можете создать новую таблицу и скопировать в нее старые данные:

CREATE TABLE my_new_table LIKE my_old_table;
ALTER TABLE my_new_table ADD COLUMN (index INT AUTO_INCREMENT ...) FIRST;
INSERT INTO my_new_table (field1, field2, field3, ....)
  SELECT (field1, field2, field3, ...) FROM my_old_table;

Затем удалить старую таблицу и переименовать новую.

1 голос
/ 04 октября 2011

Вы можете построить SPROC с циклом и использовать значение счетчика для вставки значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...