Ответ
ALTER TABLE — это оператор языка SQL, предназначенный для изменения структуры существующей таблицы без необходимости её удаления и повторного создания.
Основные применения:
- Изменение схемы таблицы: добавление, удаление или переименование столбцов.
- Изменение типов данных: модификация типа данных существующего столбца.
- Управление ограничениями (constraints): добавление или удаление первичных ключей (PRIMARY KEY), внешних ключей (FOREIGN KEY), уникальных (UNIQUE) и проверочных (CHECK) ограничений.
- Изменение свойств таблицы: например, переименование самой таблицы.
Примеры (синтаксис может незначительно отличаться в разных СУБД):
-- Добавить новый столбец
ALTER TABLE employees ADD COLUMN hire_date DATE;
-- Удалить столбец
ALTER TABLE employees DROP COLUMN middle_name;
-- Изменить тип данных столбца
ALTER TABLE employees ALTER COLUMN salary TYPE DECIMAL(10,2);
-- Добавить ограничение NOT NULL
ALTER TABLE employees ALTER COLUMN email SET NOT NULL;
-- Добавить внешний ключ
ALTER TABLE orders ADD CONSTRAINT fk_customer_id
FOREIGN KEY (customer_id) REFERENCES customers(id);
Почему это важно: ALTER TABLE позволяет гибко адаптировать структуру базы данных к изменяющимся требованиям приложения, сохраняя при этом существующие данные.