Главная >> Инструкции >> Как добавить столбец в таблицу MySQL

Как добавить столбец в таблицу MySQL

В СУБД MySQL, как и в других базах данных помимо добавления и извлечения данных можно изменять структуру таблиц. Одной из таких возможностей является добавление нового столбца или столбцов в уже существующую таблицу. Для добавления новых столбцов существует специальная команда - ALTER TABLE ADD COLUMN.

В качестве параметров также можно задать ротацию, т.е. выбрать после каких уже существующих столбцов в таблице необходимо добавлять новые. В данной статье будет рассмотрено как выполняется добавление столбца в таблицу MySQL версии в операционной системе Ubuntu 20.04.


Содержание статьи

Как добавить столбец в таблицу MySQL

Для добавления новых столбцов в таблицу в СУБД MySQL присутствует специальная команда - ALTER TABLE ADD COLUMN. Ниже предоставлен её синтаксис:

ALTER TABLE имя_таблицы ADD COLUMN имя_нового_столбца тип_данных [FIRST|AFTER имя_существующего_столбца];

Сначала указывается имя таблицы, в которую будет добавлен новый столбец. Имя идёт сразу после команды ALTER TABLE. Далее после директивы ADD COLUMN необходимо указать имя нового столбца, который будет создан и задать его тип данных. Ключевое слово COLUMN можно опустить, оно не обязательно. Также в качестве дополнительных параметров можно указать положение нового столбца в таблице. Если указать FIRST, то столбец будет создан в самом начале таблице, также можно указать расположение после специфического столбца (при условии, что он присутствует в таблице) для этого необходимо вписать ключевое слово AFTER и указать имя уже существующего столбца в таблице.

В качестве примера будет создана таблица с именем personal_information и состоящая из одного столбца с именем id. Команда для создания таблицы с одним столбцом приведена ниже:

CREATE TABLE IF NOT EXISTS personal_information (id INT AUTO_INCREMENT PRIMARY KEY);

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

DESCRIBE personal_information;

Помимо вывода всех столбцов в таблице команда DESCRIBE также отображает типы данных столбцов а также наличие первичных и внешних ключей.

Добавление одного столбца в таблицу

Для того чтобы добавить столбец в таблицу MySQL не задавая порядок (при отсутствии порядка новый созданный столбец будет помещен в самый конец таблицы, в данном примере новый столбец с именем name будет находиться после столбца с именем id) необходимо выполнить следующую команду:

ALTER TABLE personal_information ADD COLUMN name VARCHAR(50) NOT NULL;

Добавление нескольких столбцов в таблицу

Для добавления двух и более столбцов необходимо воспользоваться той же командой ALTER TABLE ADD COLUMN при этом перечисляя данный аргумент через запятую. В примере ниже в таблицу с именем personal_information будут добавлены 2 новых столбца с именами last_name и city так как позиция столбцов не была указана, столбцы будут добавлены в конец таблицы. Команда будет выглядеть следующим образом:

ALTER TABLE personal_information ADD COLUMN last_name VARCHAR(50) NOT NULL, ADD COLUMN city VARCHAR (100) NOT NULL;

Добавление столбца в начало таблицы

Если присутствует необходимость в добавлении столбца в самое начало таблицы это можно сделать, добавив параметр FIRST в команду ALTER TABLE ADD COLUMN. Для начала выведем все столбцы таблицы с именем personal_information:

DESCRIBE personal_information;

Теперь необходимо добавить новый столбец с именем customer_id который должен находиться перед столбцом id. Команда для добавления данного столбца будет выглядеть следующим образом:

ALTER TABLE personal_information ADD COLUMN customer_id INT FIRST;

Как видно на скриншоте выше новый столбец с именем customer_id был добавлен в самое начало (первым был столбец с именем id).

Добавление столбца после определённого столбца

Также создать столбец MySQL можно после определенного столбца. В качестве примера необходимо добавить новый столбец с именем country который должен находиться после столбца last_name (см. структуру таблицы ниже):

Для того чтобы добавить новый столбец после определенного столбца необходимо добавить параметр AFTER после которого следует имя уже присутствующего столбца в таблице. Команда будет выглядеть следующим образом:

ALTER TABLE personal_information ADD COLUMN country VARCHAR(100) AFTER last_name;

Новый созданный столбец country был добавлен после столбца last_name (см. скриншот выше).

Выводы

В данной небольшой статье была рассмотрено как добавить столбец в таблицу MySQL. Помимо этого, были описаны такие возможности добавления как добавление столбцов в самое начло таблицы и после специфического столбца. Есть ли у вас опыт работы с СУБД MySQL? Расскажите в комментариях!

Pеклама
Посмотреть детали

Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали

2 комментария к “Как добавить столбец в таблицу MySQL”

  1. Когда учился, делал сайт на WordPress в OpenServer, база пользователей была в бд на MySQL. А так, фигня это в сравнении с цивилизованной Microsoft SQL Server Enterprise, скачанной с торрентов на халяву.

    Ответить
  2. Привет. Напиши статью про то, как настроить Linux под пожилых родителей и какие программы им нужны?
    WhatsUp, Skypy(?) и... Что им ещё поставить? )

    Ответить

Оставьте комментарий