摘要:在本教學中,您將學習如何使用 SQL DROP TABLE 陳述式來移除資料庫中的一個或多個表格。
SQL DROP TABLE 陳述式簡介
隨著資料庫的發展,我們需要從資料庫中移除過時或冗餘的表格。要刪除表格,我們使用 DROP TABLE
陳述式。
以下說明 DROP TABLE
陳述式的語法。
DROP TABLE [IF EXISTS] table_name;
Code language: SQL (Structured Query Language) (sql)

要刪除現有的表格,您需要在 DROP TABLE
子句之後指定表格的名稱。如果要刪除的表格不存在,資料庫系統會發出錯誤訊息。
為了防止移除不存在的表格時發生錯誤,我們使用可選的子句 IF EXISTS
。如果我們使用 IF EXISTS
選項,如果我們刪除不存在的表格,資料庫系統將不會拋出任何錯誤。某些資料庫系統會改為拋出警告或通知。
請注意,並非所有資料庫系統都支援 IF EXISTS
選項。支援 IF EXISTS
選項的包括 MySQL、PostgreSQL 和 SQL Server 2016。
DROP TABLE
陳述式會永久移除表格的資料和結構。某些資料庫系統要求表格必須為空,才能從資料庫中移除。這有助於您防止意外刪除仍在使用的表格。
要刪除表格中的所有資料,您可以使用 DELETE
或 TRUNCATE TABLE
陳述式。
要刪除被另一個表格的外鍵約束所參考的表格,您必須在移除表格之前停用或移除外鍵約束。
SQL DROP TABLE 範例
讓我們建立一個新表格來練習 DROP TABLE
陳述式。
以下陳述式會建立一個名為 emergency_contacts
的新表格,用於儲存員工的緊急聯絡人。
CREATE TABLE emergency_contacts (
id INT AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
relationship VARCHAR(50) NOT NULL,
employee_id INT NOT NULL
);
Code language: SQL (Structured Query Language) (sql)
以下陳述式會刪除 emergency_contacts
表格
DROP TABLE emergency_contacts;
Code language: SQL (Structured Query Language) (sql)
SQL DROP TABLE – 移除多個表格
DROP TABLE
陳述式允許您同時移除多個表格。為此,您需要在 DROP TABLE
子句之後指定以逗號分隔的表格列表,如下所示
DROP TABLE table_name1,table_name2,...;
Code language: SQL (Structured Query Language) (sql)
然後,資料庫系統會逐一刪除所有表格。
摘要
- 使用 SQL DROP TABLE 陳述式從資料庫中刪除一個或多個表格。