У SQL часто потрібні структурні модифікації бази даних, такі як перейменування таблиць або стовпців, додавання нових стовпців або зміна типів даних. Команда ALTER TABLE дозволяє ефективно вносити ці зміни, не впливаючи на існуючі дані. Це важлива команда для керування та оновлення схем бази даних у міру того, як розвиваються вимоги до програм.
приклад: Спочатку давайте створимо зразок таблиці Student, щоб продемонструвати команду ALTER:
Запит:
ALTER TABLE students
RENAME TO learners;
Вихід:
Синтаксис для команди ALTER
Ось загальні формати синтаксису для використання команди ALTER TABLE:
1. Перейменування таблиці
ALTER TABLE назва_таблиці
RENAME TO new_table_name;
2. Перейменування стовпця
ALTER TABLE назва_таблиці
RENAME COLUMN old_column_name TO new_column_name;
3. Додавання нового стовпця
ALTER TABLE назва_таблиці
ADD column_name тип даних;топології мережі
ALTER TABLE назва_таблиці
MODIFY COLUMN column_name new_datatype;
Приклади команди ALTER у SQL
Нижче наведено практичні приклади, які допоможуть нам зрозуміти, як ефективно використовувати команду ALTER у різних сценаріях. Ці приклади включають перейменування таблиць або стовпців, додавання нових стовпців або змінна колонка типи даних.
1. Створіть зразок таблиці
Спочатку давайте створимо зразок Student таблиця для демонстрації ALTER команда:
CREATE TABLE Student (
id INT PRIMARY KEY
name VARCHAR(50)
age INT
email VARCHAR(50)
phone VARCHAR(20)
);
Давайте вставимо деякі дані, а потім виконаємо операцію ALTER, щоб краще зрозуміти команду alter.
INSERT INTO Student (id name age email phone)
VALUES
(1 'Amit' 20 '[email protected]' '9999999999')
(2 'Rahul' 22 '[email protected]' '8888888888')
(3 'Priya' 21 '[email protected]' '7777777777')
(4 'Sonia' 23 '[email protected]' '6666666666')
(5 'Kiran' 19 '[email protected]' '5555555555');
Вихід
приклад 1: Перейменувати стовпець
Змініть назву стовпця на FIRST_NAME у таблиці Student. Щоб змінити назву стовпця існуючої таблиці, ми повинні використати ключове слово Column перед написанням існуючої назви стовпця для зміни.
Синтаксис
ALTER TABLE Student RENAME COLUMN Column_NAME TO FIRST_NAME;
Запит:
ALTER TABLE Student RENAME Column name TO FIRST_NAME;Вихід
Вихідприклад 2: Перейменування таблиці
У цьому прикладі ми хочемо перейменувати таблицю зStudentдоStudent_DetailsвикористовуючиALTER TABLEкоманда робить назву більш описовою і відповідає його змісту.
Запит:
ALTER TABLE Student RENAME TO Student_Details;Вихід
Приклад 3: додайте новий стовпець
Щоб додати новий стовпець до існуючої таблиці, нам спочатку потрібно вибрати таблицю за допомогою команди ALTER TABLE table_name, а потім ми запишемо назву нового стовпця та його тип даних за допомогою ADD column_name тип даних. Давайте подивимося нижче, щоб краще зрозуміти.
Синтаксис
ALTER TABLE назва_таблиці
ADD column_name тип даних;пошукова система та приклади
Запит:
ALTER TABLE Student ADD marks INT;Вихід
У прикладі thephoneстовпець оновлено зVARCHAR(20)доBIGINT для більш ефективного зберігання числових даних і забезпечення цілісність даних для телефонних номерів без зайвих символів.
Синтаксис
ALTER TABLE назва_таблиці
MODIFY COLUMN column_name new_datatype;
Запит:
вирівняти зображення за допомогою css
ALTER TABLE Student_Details
MODIFY COLUMN phone BIGINT;
Вихід
| id | назва | вік | електронною поштою | телефон |
|---|---|---|---|---|
| 1 | Що | 20 | [email protected] | 9999999999 |
| 2 | Рахул | 22 | [email protected] | 8888888888 |
| 3 | Прия | 21 | [email protected] | 7777777777 |
| 4 | Соня | 23 | [email protected] | 6666666666 |
| 5 | Дзвінок | 19 | [email protected] | 5555555555 |
Пояснення :
- Стовпець телефону тепер має тип даних BIGINT, придатний для зберігання великих числових значень.
- Існуючі дані залишаються незмінними, але зберігаються як цілі числа замість рядків.
Додаткові випадки використання команди ALTER
1. Видалення колонки : у деяких випадках може знадобитися видалити стовпець. Для цього ви можете використовувати синтаксис DROP COLUMN:
ALTER TABLE Відомості про студента
DROP COLUMN позначки;
Ця команда повністю видаляє стовпець позначок із таблиці
2. Зміна значення стовпця за замовчуванням : Ми також можемо змінити значення стовпця за замовчуванням за допомогою пропозиції SET DEFAULT:
ALTER TABLE Відомості про студента
ALTER COLUMN age SET DEFAULT 18;
3. Перейменування таблиці або стовпця в різних базах даних : Зверніть увагу, що синтаксис SQL може відрізнятися в різних системах баз даних. Ось як ми б перейменували таблицю або стовпець у MySQL MariaDB і Оракул :
- MySQL / MariaDB : Синтаксис для перейменування стовпця схожий, але ви також повинні використовувати команду CHANGE COLUMN, щоб перейменувати стовпець:
ALTER TABLE Учень
CHANGE COLUMN old_column_name new_column_name тип даних;
- Оракул : Oracle підтримує синтаксис RENAME COLUMN, але вимагає іншого синтаксису для перейменування таблиці:
Створіть вікторинуALTER TABLE Student RENAME COLUMN old_column_name TO new_column_name;