Введення в команду Alter Alter

SQL (Структурована мова запитів) використовується для виконання операцій над базами даних і таблицями з використанням різних команд SQL, таких як DDL (Мова визначення даних), DML (Мова маніпуляції даними), DCL (Мова управління даними) і TCL (Мова управління транзакціями). У DDL ми використовуємо команди, такі як CREATE, DROP, ALTER тощо для створення та зміни структури бази даних або об'єктів у базі даних. Команда ALTER використовується для додавання, зміни або видалення стовпців таблиці. У цій темі ми дізнаємось про команду Alter Alter Command.

Синтаксис

Команда ALTER може використовуватися для додавання стовпців до існуючої таблиці, відкидання стовпця з таблиці, перейменування існуючого стовпця та зміни типу даних стовпця. Нижче наведено синтаксис, який використовується для різних операцій, які можна виконати за допомогою команди Alter.

Синтаксис для додавання нового стовпця до наявної таблиці наведено нижче:

ALTER TABLE table_name ADD COLUMN column_name datatype;

Синтаксис для додавання стовпця зі значенням за замовчуванням до існуючої таблиці наведено нижче:

ALTER TABLE table_name ADD COLUMN column_name datatype DEFAULT 'value';

Синтаксис зміни типу даних існуючого стовпця, як показано нижче:

ALTER TABLE table_name MODIFY column_name datatype;

Синтаксис перейменування стовпця, як показано нижче:

ALTER TABLE table_name RENAME old_column_name To new_column_name;

Синтаксис пропускання стовпця, як показано нижче:

ALTER TABLE table_name DROP column_name;

Синтаксис для додавання обмеження NOT NULL до стовпця, як показано нижче:

ALTER TABLE table_name MODIFY column_name datatype NOT NULL;

Як використовувати команду SQL Alter з прикладами?

Щоб зрозуміти командні операції ALTER, розглянемо нижню таблицю "ПРАЦІВНИК" як приклад. Таблиця 'EMPLOYEE' вже створена, і за допомогою команди Alter багато модифікацій, таких як додавання стовпця, перейменування стовпця, викидання стовпця тощо, можна зробити, як описано нижче.

Таблиця працівника:

Посвідчення особиІМ’ЯВІКСАЛАРА
134Сональний2423000, 00
145Ніхіл2728990, 00
167Сохам2625000, 00
234Яш3235000, 00
189Риту2529000, 00
190Раджеш2829000, 00

Додавання одного стовпця до таблиці ПРАЦІВНИКА, як показано нижче

ALTER TABLE EMPLOYEE ADD COLUMN DOB DATE;

Наведена вище команда ALTER додасть стовпчик "DOB" до існуючої таблиці "ПРАЦІВНИК". Тут стовпець "DOB" матиме нульове значення для кожного рядка в існуючій таблиці.

Результат ми бачимо за допомогою наведеного нижче твердження:

Select * from EMPLOYEE;

Посвідчення особиІМ’ЯВІКСАЛАРАDOB
134Сональний2423000, 00нуль
145Ніхіл2728990, 00нуль
167Сохам2625000, 00нуль
234Яш3235000, 00нуль
189Риту2529000, 00нуль
190Раджеш2829000, 00нуль

Додавання стовпця зі значенням за замовчуванням

Припустимо, що працівники приєдналися в один і той же день, тому стовпець Дата приєднання може мати однакове значення за замовчуванням для всіх працівників.

ALTER TABLE EMPLOYEE ADD COLUMN DOJ DATE DEFAULT '1990-08-09';

Вищенаведений ALTER-додаток додасть стовпчик 'DOJ' зі значенням за замовчуванням '1990-08-09' до таблиці EMPLOYEE. Ми можемо побачити результат вищевказаної команди, скориставшись наведеним нижче твердженням:

Select * from EMPLOYEE;

Посвідчення особиІМ’ЯВІКСАЛАРАDOJ
134Сональний2423000, 001990-08-09
145Ніхіл2728990, 001990-08-09
167Сохам2625000, 001990-08-09
234Яш3235000, 001990-08-09
189Риту2529000, 001990-08-09
190Раджеш2829000, 001990-08-09

Перейменування існуючого стовпця

Використовуючи команду нижче, ми можемо перейменувати стовпець "Ідентифікатор" з існуючої таблиці "ПРАЦІВНИК" у "EMP_ID".

ALTER TABLE EMPLOYEE rename ID to EMP_ID;

Результат наведеної команди можна побачити з наведеного нижче твердження:

Select * from EMPLOYEE;

EMP_IDІМ’ЯВІКСАЛАРАDOJ
134Сональний2423000, 001990-08-09
145Ніхіл2728990, 001990-08-09
167Сохам2625000, 001990-08-09
234Яш3235000, 001990-08-09
189Риту2529000, 001990-08-09
190Раджеш2829000, 001990-08-09

Видалення стовпця з існуючої таблиці

ALTER TABLE EMPLOYEE DROP COLUMN DOJ;

Наведена вище команда видалить стовпець "DOJ" з таблиці "ПРАЦІВНИК".

Результати ми бачимо за наведеним нижче твердженням:

Select * from EMPLOYEE;

EMP_IDІМ’ЯВІКСАЛАРА
134Сональний2423000, 00
145Ніхіл2728990, 00
167Сохам2625000, 00
234Яш3235000, 00
189Риту2529000, 00
190Раджеш2829000, 00

Додавання NOT NULL обмеження до стовпця

Тут таблиця "ПРАЦІВНИК" вже створена, і якщо ми хочемо додати НУЛЬНЕ обмеження до стовпця "САЛАР", то ми можемо зробити це, як показано нижче.

ALTER TABLE EMPLOYEE MODIFY SALARY DECIMAL(18, 2) NOT NULL;

Змінення типу даних стовпця

Наведене нижче твердження можна використовувати для зміни типу даних існуючого стовпця, як показано нижче:

ALTER TABLE EMPLOYEE MODIFY NAME CHAR(50);

Переваги

Нижче наведено переваги використання команди Alter:

  • Команда Alter дуже корисна, коли ми хочемо змінити базу даних або таблиці, що містяться в базі даних.
  • За допомогою команди Alter можна внести багато модифікацій, якщо потрібні будь-які зміни в дизайні бази даних, не порушуючи існуючої бази даних або пов'язаних з нею об'єктів.
  • Ми можемо додати обмеження до стовпця навіть після створення таблиці.

Висновок

Потреба в команді ALTER виявляється корисною, коли ми хочемо змінити або змінити існуючу базу даних, якщо будь-яка бізнес-вимога з’явиться в картині після завершення проектування. Ми можемо легко змінювати базу даних або таблиці в ній за допомогою команди Alter. Але розробники повинні перевірити дозволи ALTER, надані користувачам під час використання команди Alter для таблиць баз даних. Крім того, коли ми використовуємо команду Alter для додавання первинного ключа, ми повинні зберігати це в повідомленні про те, що стовпець первинного ключа повинен бути вже створений, тобто коли вперше створена таблиця не містила нульових значень.

Рекомендовані статті

Це посібник по команді SQL Alter Command. Тут ми обговорюємо, як використовувати SQL, додаючи команди Alter з прикладами та перевагами. Ви також можете переглянути наступну статтю, щоб дізнатися більше -

  1. Інструменти управління SQL
  2. Функції рядків T-SQL
  3. Що таке інжекція SQL?
  4. Як підключити базу даних до MySQL?