Кафедра ИТКафедра ИТ
Обучение
  • О кафедре
  • Направления подготовки
  • Друзья и партнеры
  • Структура кафедры
  • Обращение к студентам
  • Официальный сайт «ВШП»
GitHub
Обучение
  • О кафедре
  • Направления подготовки
  • Друзья и партнеры
  • Структура кафедры
  • Обращение к студентам
  • Официальный сайт «ВШП»
  • ОП.08 - 13 - Изменение таблиц. Операция ALTER TABLE

Примечание

ЭТО АРХИВНАЯ ВЕРСИЯ КУРСА!

Материалы предназначаются для пересдающих дисциплину "ОП.08 - Основы проектирования баз данных" в соответствии с учебными планами СПО годов набора ДО 2024-го. Для того чтобы ознакомиться с актуальным курсом "ИТ.03 - Основы проектирования баз данных" включающим интерактивные примеры, перейдите по ссылке.

Материалы были перенесены со старого сайта с минимальной доработкой, поэтому не все возможности курса могут работать как ожидается, где-то может слететь форматирование.

Домашние задания в рамках курса проверяться не будут!

ОП.08 - 13 - Изменение таблиц. Операция ALTER TABLE

Примеры данной темы используют учебную БД:

articles_01.sql

articles_01.sql

Команда ALTER TABLE

ALTER TABLE — это команда SQL, которая позволяет изменять структуру таблицы в базе данных. Эта команда может использоваться для добавления, удаления или изменения столбцов, индексов и ограничений. Важно помнить, что изменение таблицы может повлиять на целостность данных, поэтому необходимо тщательно продумывать каждое изменение.

Примеры изменения таблицы при помощи ALTER TABLE в MySQL 8:

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

Чтобы добавить новый столбец в таблицу, используйте следующий синтаксис:

ALTER TABLE table_name ADD column_name data_type;

Например, чтобы добавить столбец "phone" в которой будет содержаться рекламный телефон для связи по теме статьи с типом данных VARCHAR(20) в таблицу "articles", используйте следующую команду:

ALTER TABLE articles ADD phone VARCHAR(20);

Изменение столбца

Чтобы изменить тип данных столбца, используйте следующий синтаксис:

ALTER TABLE table_name MODIFY column_name new_data_type;

Например, чтобы изменить тип данных столбца "phone" на BIGINT в таблице "articles", используйте следующую команду:

ALTER TABLE articles MODIFY phone BIGINT;

[!TIP]
Обратите внимание, что успех запроса будет зависеть от того возможно ли преобразовать данные, которые содержатся в соответствующих столбцах без потерь. Если данные будут не совместимы, то СУБД вернет ошибку.

Чтобы изменить название столбца, используйте следующий синтаксис:

ALTER TABLE table_name CHANGE old_column_name new_column_name new_data_type;

Например, чтобы изменить название столбца phone на ad_phone:

ALTER TABLE articles CHANGE phone ad_phone VARCHAR(12);

Удаление столбца

Чтобы удалить столбец из таблицы, используйте следующий синтаксис:

ALTER TABLE table_name DROP column_name;

Например, чтобы удалить столбец "ad_phone" из таблицы "articles", используйте следующую команду:

ALTER TABLE articles DROP ad_phone;

Задания для самопроверки

  1. Изменить тип данных столбца content с TEXT (65 535 символов) на MEDIUMTEXT (16 777 215 символов):
ALTER TABLE articles MODIFY content MEDIUMTEXT;
  1. Добавить новый столбец views для отслеживания количества просмотров статьи:
ALTER TABLE articles ADD COLUMN views INT UNSIGNED DEFAULT 0;
  1. Изменить название столбца date_created на created_at:
ALTER TABLE articles CHANGE date_created created_at DATE;
  1. Удалить столбец author_id:
ALTER TABLE articles DROP COLUMN author_id;
  1. Изменить значение по умолчанию для столбца views на 1:
ALTER TABLE articles ALTER COLUMN views SET DEFAULT 1;
  1. Изменить тип данных столбца title на VARCHAR(255):
ALTER TABLE articles MODIFY title VARCHAR(255);
  1. Изменить значение столбца views для всех статей, у которых оно равно 0, на 1:
UPDATE articles SET views = 1 WHERE views = 0;
  1. Изменить тип данных столбца created_at с DATE на DATETIME:
ALTER TABLE articles MODIFY created_at DATETIME;
Последнее обновление: 31.10.2025, 18:45
Предыдущая
ОП.08 - 12 - Решение практических задач в рамках БД с несколькими таблицами
Следующая
ОП.08 - 14 - Индексы и ограничения. Добавление и удаление индексов и ограничений
© Кафедра информационных технологий ЧУВО «ВШП», 2025. Версия: 0.20.1
Материалы доступны в соответствии с лицензией: