Простой способ изменить порядок столбцов?


Я работаю над базой данных. В большинстве таблиц порядок столбцов не такой, как я ожидал, и я хотел бы его изменить (у меня есть разрешение). Например, столбцы primary_key id редко являются первым столбцом!

Существует ли простой способ перемещения столбцов с помощью phpMyAdmin?

Author: Pang, 2010-11-04

8 answers

Используйте ТАБЛИЦУ ИЗМЕНЕНИЙ... ИЗМЕНИТЕ инструкцию СТОЛБЦА.

ALTER TABLE table_name MODIFY COLUMN misplaced_column INT(11) AFTER other_column;
 54
Author: Eran Galperin, 2010-11-04 10:01:16

Вот sql-запрос
ИЗМЕНИТЬ ТАБЛИЦУ имя_таблицы ИЗМЕНИТЬ СТОЛБЕЦ неправильно помещенный столбец -определение столбца ПОСЛЕ другого столбца; Здесь в Определение столбца - это полное определение столбца. Чтобы просмотреть определение столбца, если вы используете phpmyadmin, перейдите на вкладку структура. Затем нажмите на ссылку изменить в нужном столбце. Затем, не изменяя ничего, нажмите кнопку Сохранить. Он покажет вам sql. Скопируйте sql и просто добавьте *ПОСЛЕ другого столбца* в конце. Это будет все.

Если вам нравится чтобы переместить столбец *misplaced_column* на первую позицию, затем ИЗМЕНИТЬ ТАБЛИЦУ имя_таблицы ИЗМЕНИТЬ СТОЛБЕЦ неверно помещенный столбец -сначала определение столбца;

 6
Author: zahid9i, 2012-12-17 15:34:11

Поскольку вы упомянули phpMyAdmin, теперь есть способ изменить порядок столбцов в самой последней версии (4.0 и выше).

Перейдите в представление "Структура" таблицы, нажмите кнопку "Изменить" (или "Изменить") в соответствующем поле, затем в разделе "Переместить столбец" выберите, куда вы хотите переместить поле.

 5
Author: DisgruntledGoat, 2016-07-20 22:45:20
ALTER TABLE `table`
CHANGE COLUMN `field` `field` 
INT(11) AFTER `field2`;
 4
Author: pltvs, 2010-11-04 10:13:49

В phpMyAdmin версии 3.5.5 перейдите на вкладку "Обзор" и перетащите столбцы в нужное место для изменения порядка (например, если у вас есть столбцы с именами A, B, C, все, что вам нужно сделать, это перетащить столбец C между A и B, чтобы изменить его порядок как A, C, B).

 2
Author: Dee, 2014-12-04 10:31:09

Другой подход заключается в следующем:

#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;
 1
Author: Petah, 2010-11-04 10:04:30

SQL Maestro для MySQL предлагает инструменты для изменения порядка полей, а также с графическим интерфейсом, к сожалению, это не перетаскивание.

  1. Открыть представление таблицы
  2. Откройте вкладку Свойства
  3. Нажмите Изменить порядок полей на боковой панели
  4. Нажмите на поле, которое вы хотите переместить, а затем нажмите зеленые стрелки вверх или вниз
  5. Нажмите кнопку ОК, чтобы отправить обновление базы данных

Вероятно, для этого существуют и другие программы и утилиты. Я нашел эту тему в результате поиска, поэтому я думал, что поделюсь тем, что нашел, для других.

 0
Author: amaster, 2013-12-13 16:12:11

Простой метод для более новой версии:

  1. Откройте таблицу, которую вы хотите изменить порядок.
  2. Перейдите на вкладку структура.
  3. Выбрал ссылку переместить столбец.
  4. Измените порядок столбцов по своему усмотрению.
 0
Author: Black Mamba, 2017-09-01 11:48:25