Ответ 1
Используйте ALTER TABLE... MODIFY COLUMN.
ALTER TABLE table_name MODIFY COLUMN misplaced_column INT(11) AFTER other_column;
Я работаю над базой данных. В большинстве таблиц порядок столбцов - это не то, что я ожидал бы, и я хотел бы изменить его (у меня есть разрешение). Например, столбцы primary_key id
редко являются первым столбцом!
Есть ли простой способ перемещения столбцов с phpMyAdmin?
Используйте ALTER TABLE... MODIFY COLUMN.
ALTER TABLE table_name MODIFY COLUMN misplaced_column INT(11) AFTER other_column;
Вот запрос sql
ALTER TABLE table_name MODIFY COLUMN misplaced_column Определение столбца ПОСЛЕ other_column;
Здесь в столбце "Определение - полное определение столбцов". Чтобы увидеть определение столбца, если вы используете phpmyadmin, нажмите на вкладку структуры. Затем нажмите ссылку на изменение в нужной колонке. Затем, когда вы модифицируете любую вещь, нажмите "Сохранить". Он покажет вам sql. Скопируйте sql и просто добавьте * ПОСЛЕ other_column * в конце. Это все.
Если вы хотите принести * misplaced_column * в первую позицию, тогда ALTER TABLE имя_таблицы MODIFY COLUMN misplaced_column Определение столбца FIRST;
Поскольку вы упоминаете phpMyAdmin, теперь есть способ изменить порядок столбцов в самой последней версии (4.0 и выше).
Перейдите в представление "Структура" таблицы, нажмите кнопку "Изменить" (или "Изменить" ) в соответствующем поле, а затем в поле "Переместить столбец" выберите, куда вы хотите, чтобы поле уходило.
ALTER TABLE `table`
CHANGE COLUMN `field` `field`
INT(11) AFTER `field2`;
В phpMyAdmin версии 3.5.5 перейдите на вкладку "Обзор" и перетащите столбцы в предпочтительное место для переупорядочения (например, если у вас есть столбцы с именами A, B, C, все, что вам нужно сделать, это перетащить столбец C между A и B, чтобы переупорядочить его как A, C, B).
Другой подход заключается в следующем:
#CREATE TABLE original (
# id INT
# name TEXT
# etc...
#);
CREATE TABLE temp (
name TEXT
id INT
etc...
);
INSERT INTO temp SELECT name, id FROM original;
DROP TABLE original;
RENAME TABLE temp TO original;
SQL Maestro for MySQL предлагает инструменты для изменения порядка полей, а также с графическим интерфейсом, к сожалению, это не перетаскивание.
Возможно, для этого есть другие программы и утилиты. Я нашел этот поток из поиска, поэтому я решил поделиться тем, что нашел для других.
Простой способ для более новой версии: