Как да премахнете колона в SQL
Въведение
- За да изтриете колона от вече създадена таблица, трябва да използвате ALTER команда заедно с ИЗПУСКАНЕ КОЛОНА клауза.
Синтаксис:
ALTER TABLE tablename DROP COLUMN ColumnName;
Къде ,
- Име на таблица е името на вече съществуваща таблица, от която трябва да изтриете колона.
- ColumnName е името на колоната, която трябва да бъде изтрита от вече съществуваща таблица.
Пример 1:
Първо, ще създадем база данни с име „studentdb “. След това в тази база данни ще създадем таблица „student“ и ще вмъкнем записи в таблицата.
Сега ще изтрием колона „Град“ от съществуваща таблица.
mysql> USE studentdb; Database changed mysql> SELECT *FROM student; +---------+-----------+-----------+-------------+------+ | Stud_ID | Stud_Name | Course_ID | Course_Name | City | +---------+-----------+-----------+-------------+------+ | 1 | Prajakta | 101 | DBMS | NULL | | 2 | Shweta | 102 | CN | NULL | | 3 | Nikita | 103 | OS | NULL | | 4 | Ankita | 104 | C | NULL | | 5 | Ashmita | 105 | JAVA | NULL | +---------+-----------+-----------+-------------+------+ 5 rows in set (0.00 sec) mysql> ALTER TABLE student DROP COLUMN City; Query OK, 5 rows affected (0.29 sec) Records: 5 Duplicates: 0 Warnings: 0 mysql> SELECT *FROM student; +---------+-----------+-----------+-------------+ | Stud_ID | Stud_Name | Course_ID | Course_Name | +---------+-----------+-----------+-------------+ | 1 | Prajakta | 101 | DBMS | | 2 | Shweta | 102 | CN | | 3 | Nikita | 103 | OS | | 4 | Ankita | 104 | C | | 5 | Ashmita | 105 | JAVA | +---------+-----------+-----------+-------------+ 5 rows in set (0.00 sec)
Колоната „Град“ е премахната от съществуваща таблица за ученици.
Пример 2:
Ще изтрием колона „Stud_ID“ заедно с нейния първичен ключ.
mysql> DESC student; +-------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+-------+ | Stud_ID | int(11) | NO | PRI | NULL | | | Stud_Name | varchar(20) | YES | | NULL | | | Course_ID | int(11) | YES | | NULL | | | Course_Name | varchar(20) | YES | | NULL | | +-------------+-------------+------+-----+---------+-------+ 4 rows in set (0.02 sec) mysql> ALTER TABLE student DROP COLUMN Stud_ID; Query OK, 5 rows affected (0.28 sec) Records: 5 Duplicates: 0 Warnings: 0 mysql> DESC student; +-------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+-------+ | Stud_Name | varchar(20) | YES | | NULL | | | Course_ID | int(11) | YES | | NULL | | | Course_Name | varchar(20) | YES | | NULL | | +-------------+-------------+------+-----+---------+-------+ 3 rows in set (0.01 sec)
Използвахме DESC команда в SQL, за да видите структурата на студентската таблица. Преди да изпълните командата ALTER, съществува първичен ключ на „Stud_ID“. След изпълнение на командата ALTER заедно с клаузата за колона DROP, „Stud_ID“ се премахва от структурата на таблицата заедно с неговия първичен ключ.