Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Cara menghapus kolom dalam tabel

Pengantar

  • Dalam SQL, terkadang diperlukan untuk menghapus kolom dari sebuah tabel.
  • Penggunaan ALTER TABLE perintah dengan DROP COLUMN klausa akan berfungsi untuk menghapus/menghapus kolom dari tabel.
  • Dimungkinkan untuk menghapus satu atau beberapa kolom dari sebuah tabel.

1. Menghapus satu kolom dari tabel

Untuk menghapus satu kolom tabel, gunakan sintaks yang diberikan di bawah ini:

ALTER TABLE TableName DROP COLUMN ColumnName;

Di sini,

  • NamaTabel adalah nama tabel yang kolomnya akan dihapus.
  • ColumnName setelah klausa DROP COLUMN adalah nama kolom yang akan dihapus.

Contoh:

Pertimbangkan database dengan nama "employee_db" dengan tabel 'employee' dibuat di dalamnya. Dalam topik ini, kami akan mempertimbangkan tabel dan database ini untuk semua contoh berikut:

mysql> USE employee_db;
Database changed
mysql> DESC employee;
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| Emp_ID      | int(11)     | NO   | PRI | NULL    |       |
| Emp_Name    | varchar(20) | YES  |     | NULL    |       |
| Emp_Salary  | int(11)     | YES  |     | NULL    |       |
| Emp_Dept    | varchar(20) | YES  |     | NULL    |       |
| Emp_City    | varchar(20) | YES  |     | NULL    |       |
| Emp_PhoneNo | varchar(20) | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
6 rows in set (0.07 sec)


mysql> SELECT *FROM employee;
+--------+----------+------------+------------+----------+-------------+
| Emp_ID | Emp_Name | Emp_Salary | Emp_Dept   | Emp_City | Emp_PhoneNo |
+--------+----------+------------+------------+----------+-------------+
|    101 | Ram      |      52000 | R&D        | Pune     | 8798654676  |
|    102 | Shyam    |      38000 | Finance    | Delhi    | 9898765687  |
|    103 | Anmol    |      61000 | Accounting | Mumbai   | 9087864532  |
|    104 | Abhishek |      69000 | Purchasing | Shimla   | 7678987534  |
|    105 | Rohit    |      53000 | HRM        | Ambala   | 8897865643  |
+--------+----------+------------+------------+----------+-------------+
5 rows in set (0.00 sec)

Di sini, kami telah memilih database yang sudah dibuat dengan perintah 'USE employee_db'. Perintah "DESC employee" menjelaskan struktur tabel 'employee'. Kemudian kita telah menggunakan perintah SELECT untuk menampilkan tabel karyawan yang dibuat menjadi employee_db.

Sekarang, kami akan menulis kueri untuk menghapus kolom yang berisi kota karyawan di tabel 'karyawan' .

mysql> ALTER TABLE employee DROP COLUMN Emp_City;
Query OK, 5 rows affected (0.30 sec)
Records: 5  Duplicates: 0  Warnings: 0

Perintah ALTER TABLE digunakan pada tabel karyawan dengan klausa DROP COLUMN di Emp_City.

mysql> DESC employee;
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| Emp_ID      | int(11)     | NO   | PRI | NULL    |       |
| Emp_Name    | varchar(20) | YES  |     | NULL    |       |
| Emp_Salary  | int(11)     | YES  |     | NULL    |       |
| Emp_Dept    | varchar(20) | YES  |     | NULL    |       |
| Emp_PhoneNo | varchar(20) | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
5 rows in set (0.02 sec)


mysql> SELECT *FROM employee;
+--------+----------+------------+------------+-------------+
| Emp_ID | Emp_Name | Emp_Salary | Emp_Dept   | Emp_PhoneNo |
+--------+----------+------------+------------+-------------+
|    101 | Ram      |      52000 | R&D        | 8798654676  |
|    102 | Shyam    |      38000 | Finance    | 9898765687  |
|    103 | Anmol    |      61000 | Accounting | 9087864532  |
|    104 | Abhishek |      69000 | Purchasing | 7678987534  |
|    105 | Rohit    |      53000 | HRM        | 8897865643  |
+--------+----------+------------+------------+-------------+
5 rows in set (0.00 sec)

Ketika kita kembali menerapkan perintah DESC pada tabel 'karyawan' tepat setelah menerapkan perintah ALTER yang tertulis di atas, sekarang kita dapat melihat bahwa Emp_City tidak terdaftar dalam hasil. Ini menunjukkan bahwa kolom bernama Emp_City sekarang telah dihapus dari tabel karyawan.

Kami juga telah menggunakan perintah SELECT lagi. Pada hasil perintah SELECT, dari semua record nilai yang terdapat di Emp_City dihapus.

2. Hapus beberapa kolom dari tabel

Untuk menghapus lebih dari satu kolom tabel, gunakan sintaks yang diberikan di bawah ini:

ALTER TABLE TableName DROP COLUMN ColumnName1, DROP COLUMN ColumnName2,……ColumnNameN;

Di sini,

Kita perlu menentukan semua nama kolom yang akan dihapus, dengan klausa DROP COLUMN.

Contoh:

Pertama, kita akan melihat struktur tabel karyawan dan record yang ada di dalamnya.

mysql> DESC employee;
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| Emp_ID      | int(11)     | NO   | PRI | NULL    |       |
| Emp_Name    | varchar(20) | YES  |     | NULL    |       |
| Emp_Salary  | int(11)     | YES  |     | NULL    |       |
| Emp_Dept    | varchar(20) | YES  |     | NULL    |       |
| Emp_PhoneNo | varchar(20) | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
5 rows in set (0.02 sec)


mysql> SELECT *FROM employee;
+--------+----------+------------+------------+-------------+
| Emp_ID | Emp_Name | Emp_Salary | Emp_Dept   | Emp_PhoneNo |
+--------+----------+------------+------------+-------------+
|    101 | Ram      |      52000 | R&D        | 8798654676  |
|    102 | Shyam    |      38000 | Finance    | 9898765687  |
|    103 | Anmol    |      61000 | Accounting | 9087864532  |
|    104 | Abhishek |      69000 | Purchasing | 7678987534  |
|    105 | Rohit    |      53000 | HRM        | 8897865643  |
+--------+----------+------------+------------+-------------+
5 rows in set (0.00 sec)

Di sini, kami telah memilih database yang sudah dibuat dengan perintah 'USE employee_db'. Perintah "DESC employee" menjelaskan struktur tabel 'employee'. Kemudian kita telah menggunakan perintah SELECT untuk menampilkan tabel karyawan yang dibuat menjadi employee_db.

Sekarang, kami akan menulis kueri untuk menghapus kolom yang berisi gaji karyawan dan nomor telepon karyawan di tabel 'karyawan'.

mysql> ALTER TABLE employee DROP COLUMN Emp_Salary, DROP COLUMN Emp_PhoneNo;
Query OK, 5 rows affected (0.29 sec)
Records: 5  Duplicates: 0  Warnings: 0

Perintah ALTER TABLE digunakan pada tabel karyawan dengan klausa DROP COLUMN pada Emp_Salary dan Emp_PhoneNo.

mysql> DESC employee;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| Emp_ID   | int(11)     | NO   | PRI | NULL    |       |
| Emp_Name | varchar(20) | YES  |     | NULL    |       |
| Emp_Dept | varchar(20) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
mysql> SELECT *FROM employee;
+--------+----------+------------+
| Emp_ID | Emp_Name | Emp_Dept   |
+--------+----------+------------+
|    101 | Ram      | R&D        |
|    102 | Shyam    | Finance    |
|    103 | Anmol    | Accounting |
|    104 | Abhishek | Purchasing |
|    105 | Rohit    | HRM        |
+--------+----------+------------+
5 rows in set (0.00 sec)

Ketika kita kembali menerapkan perintah DESC pada tabel 'karyawan' setelah menerapkan perintah ALTER yang tertulis di atas, kita dapat melihat bahwa Emp_Salary dan Emp_PhoneNo tidak tercantum dalam hasil. Ini menunjukkan bahwa kolom bernama Emp_Salary dan Emp_PhoneNo sekarang dihapus dari tabel karyawan. Kemudian kami juga menggunakan perintah SELECT lagi. Pada hasil perintah SELECT, dari semua record nilai yang terdapat pada Emp_Salary dan Emp_PhoneNo dihilangkan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengambil XMLA untuk menganalisis struktur kubus

  2. Keluarga Prosesor AMD Baru Bandingkan Dengan Prosesor Intel Baru

  3. Apa itu Aplikasi Waktu Nyata?

  4. APPEND_ONLY_STORAGE_INSERT_POINT Kait

  5. Perintah TCL dalam SQL