從 MySQL 中的表中刪除一列

Faith Kilonzi 2023年1月30日 2022年5月13日
  1. 建立 MySQL 資料庫
  2. 從 MySQL 表中刪除單個列
  3. 從 MySQL 表中刪除多個列
  4. まとめ
從 MySQL 中的表中刪除一列

我們有時可能需要從資料庫表中刪除單個或多個列。MySQL 中的 ALTER TABLE DROP COLUMN 命令語句可以從表中刪除一列。

以下是完成此操作的常用語法:

ALTER TABLE table_name DROP COLUMN column_name;

以下是對上述語法的解釋:

  • 將刪除列的表的名稱。
  • DROP COLUMN 短語定義要刪除的列及其名稱。

本文將引導你從 MySQL 中的表中刪除列。

建立 MySQL 資料庫

第 1 步:建立 MySQL 資料庫和表

第一步是建立一個資料庫和一個表來展示上面的方法。

CREATE DATABASE CountryDB;
USE CountryDB;

CREATE TABLE tbl_Country
 (
     CountryId INT NOT NULL AUTO_INCREMENT,
     CountryCode varchar(50),
     CountryName varchar(50),
     IsActive bit,
     IsDeleted bit,
     PRIMARY KEY (CountryId) 
 );

第 2 步:將資料插入 MySQL 表

要將資料插入到已建立的 tbl_Country 表中,請貼上並執行提供的程式碼片段。

INSERT INTO tbl_Country (CountryCode,CountryName,IsActive,IsDeleted)
VALUES ("A","Country A",1, 1), 
		("B","Country B",1,0),
		("C","Country C",1, 1), 
		("D","Country D",1,1);

要檢視輸出,請執行 SELECT 命令。

SELECT * FROM tbl_Country;

輸出:

| CountryId | CountryCode | CountryName | IsActive | IsDeleted |
| :-------- | :---------- | :---------- | :------- | :-------- |
| 1         | A           | Country A   | 1        | 1         |
| 2         | B           | Country B   | 1        | 0         |
| 3         | C           | Country C   | 1        | 1         |
| 4         | D           | Country D   | 1        | 1         |

第 3 步:從 MySQL 中的表中刪除列

你可以使用 alter table MySQL 命令從下表中刪除一列。

刪除表列的一般語法如下所示。

alter table <tblname> drop column <colname>

在這種情況下,要從 tbl_Country 表中刪除 IsDeleted 列,請貼上以下程式碼。

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

從 MySQL 表中刪除單個列

從 MySQL 表中刪除單個列的語法如下。

ALTER TABLE tbl_Country DROP COLUMN IsDeleted;

要檢視上述命令的輸出,請執行 SELECT 命令。

SELECT * FROM tbl_Country; 
| CountryId | CountryCode | CountryName | IsActive |
| :-------- | :---------- | :---------- | :------- |
| 1         | A           | Country A   | 1        |
| 2         | B           | Country B   | 1        |
| 3         | C           | Country C   | 1        |
| 4         | D           | Country D   | 1        |

從 MySQL 表中刪除多個列

MySQL 還提供了多列的刪除。假設你要同時刪除多個列,請使用以下查詢,列名用逗號分隔。

ALTER TABLE tbl_Country
  DROP COLUMN IsActive,
  DROP COLUMN CountryName;

使用下面的程式碼顯示結果:

SELECT * FROM tbl_Country; 

輸出:

| CountryId | CountryCode |
| :-------- | :---------- |
| 1         | A           |
| 2         | B           |
| 3         | C           |
| 4         | D           |

まとめ

資料庫中的列包含用於在表中儲存特定行的值的單元格。上面的討論涵蓋了在 MySQL 中使用 ALTER TABLE 命令向你展示如何從給定列名的表中刪除列。

由於 MySQL 是一個關聯式資料庫,因此必須注意列刪除會影響資料庫系統內的關係約束及其在查詢執行期間的效能。

相關文章 - MySQL Database

相關文章 - MySQL Table