Въведение в SQL Alter командата
SQL (Структуриран език на заявките) се използва за извършване на операции върху бази данни и таблици с помощта на различни SQL команди като DDL (език за дефиниране на данни), DML (език за манипулиране на данни), DCL (език за контрол на данните) и TCL (език за контрол на транзакциите). В DDL използваме команди като CREATE, DROP, ALTER и т.н. за създаване и промяна на структурата на базата данни или обектите в базата данни. Командата ALTER се използва за добавяне, промяна или изтриване на колоните в таблица. В тази тема ще научим за SQL 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 Command с примери?
За да разберем командните операции ALTER, нека разгледаме по-долу таблицата „EMPLOYEE“ като пример. Таблицата „EMPLOYEE“ вече е създадена и с използването на командата Alter много модификации като добавяне на колоната, преименуване на колона, пускане на колона и т.н. могат да се направят, както е описано по-долу.
Таблица на работниците, както е посочено по-долу:
документ за самоличност | ИМЕ | ВЪЗРАСТ | ЗАПЛАТА |
134 | Личен | 24 | 23000.00 |
145 | Никхил | 27 | 28990.00 |
167 | Soham | 26 | 25000.00 |
234 | Яш | 32 | 35000.00 |
189 | Ritu | 25 | 29000.00 |
190 | Раджеш | 28 | 29000.00 |
Добавяне на единична колона към таблицата на EMPLOYEE, както е посочено по-долу
ALTER TABLE EMPLOYEE ADD COLUMN DOB DATE;
Горната команда ALTER ще добави колоната 'DOB' към съществуващата таблица 'EMPLOYEE'. Тук колоната 'DOB' ще има нулева стойност за всеки ред в съществуващата таблица.
Можем да видим резултата, като използваме следното изявление:
Select * from EMPLOYEE;
документ за самоличност | ИМЕ | ВЪЗРАСТ | ЗАПЛАТА | Дата на раждане |
134 | Личен | 24 | 23000.00 | нула |
145 | Никхил | 27 | 28990.00 | нула |
167 | Soham | 26 | 25000.00 | нула |
234 | Яш | 32 | 35000.00 | нула |
189 | Ritu | 25 | 29000.00 | нула |
190 | Раджеш | 28 | 29000.00 | нула |
Добавяне на колона със стойността по подразбиране
Нека приемем, че служителите са се присъединили в един и същи ден, така че колоната Дата на присъединяване може да има една и съща стойност по подразбиране за всички служители.
ALTER TABLE EMPLOYEE ADD COLUMN DOJ DATE DEFAULT '1990-08-09';
Горното изречение ALTER ще добави колоната 'DOJ' със стойност по подразбиране '1990-08-09' в таблицата EMPLOYEE. Можем да видим резултата от горната команда, като използваме по-долу оператора:
Select * from EMPLOYEE;
документ за самоличност | ИМЕ | ВЪЗРАСТ | ЗАПЛАТА | DOJ |
134 | Личен | 24 | 23000.00 | 09.08.1990 |
145 | Никхил | 27 | 28990.00 | 09.08.1990 |
167 | Soham | 26 | 25000.00 | 09.08.1990 |
234 | Яш | 32 | 35000.00 | 09.08.1990 |
189 | Ritu | 25 | 29000.00 | 09.08.1990 |
190 | Раджеш | 28 | 29000.00 | 09.08.1990 |
Преименуване на съществуваща колона
Използвайки командата по-долу, можем да преименуваме колоната 'ID' от съществуващата таблица 'EMPLOYEE' в 'EMP_ID'.
ALTER TABLE EMPLOYEE rename ID to EMP_ID;
Можем да видим резултата от горната команда от изявлението по-долу:
Select * from EMPLOYEE;
EMP_ID | ИМЕ | ВЪЗРАСТ | ЗАПЛАТА | DOJ |
134 | Личен | 24 | 23000.00 | 09.08.1990 |
145 | Никхил | 27 | 28990.00 | 09.08.1990 |
167 | Soham | 26 | 25000.00 | 09.08.1990 |
234 | Яш | 32 | 35000.00 | 09.08.1990 |
189 | Ritu | 25 | 29000.00 | 09.08.1990 |
190 | Раджеш | 28 | 29000.00 | 09.08.1990 |
Пускане на колона от съществуващата таблица
ALTER TABLE EMPLOYEE DROP COLUMN DOJ;
Горната команда ще пусне колоната „DOJ“ от таблицата „EMPLOYEE“.
Резултатите можем да видим по-долу:
Select * from EMPLOYEE;
EMP_ID | ИМЕ | ВЪЗРАСТ | ЗАПЛАТА |
134 | Личен | 24 | 23000.00 |
145 | Никхил | 27 | 28990.00 |
167 | Soham | 26 | 25000.00 |
234 | Яш | 32 | 35000.00 |
189 | Ritu | 25 | 29000.00 |
190 | Раджеш | 28 | 29000.00 |
Добавяне на NOT NULL ограничение в колона
Тук таблицата 'EMPLOYEE' вече е създадена и ако искаме да добавим ограничение NOT NULL към колоната 'SALARY', тогава можем да го направим както по-долу.
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 с примери и предимства. Можете също да разгледате следната статия, за да научите повече -
- Инструменти за управление на SQL
- T-SQL стринг функции
- Какво е SQL инжектиране?
- Как да свържете база данни с MySQL?