支援的版本: 目前 (17) / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

DROP TABLE

DROP TABLE — 移除資料表

概要

DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

描述

DROP TABLE 從資料庫中移除資料表。只有資料表擁有者、綱要擁有者和超級使用者可以刪除資料表。若要清空資料表中的列,而不破壞資料表,請使用 DELETETRUNCATE

DROP TABLE 總是會移除目標資料表存在的任何索引、規則、觸發器和約束。但是,若要刪除被檢視表或另一個資料表的外鍵約束所參考的資料表,則必須指定 CASCADE。(CASCADE 將完全移除相依的檢視表,但在外鍵的情況下,它只會移除外鍵約束,而不是完全移除另一個資料表。)

參數

IF EXISTS

如果資料表不存在,則不拋出錯誤。在這種情況下,會發出通知。

name

要刪除的資料表名稱 (可選擇加上綱要限定詞)。

CASCADE

自動刪除依賴於該資料表的物件 (例如檢視表),進而刪除依賴於這些物件的所有物件 (請參閱 第 5.15 節)。

RESTRICT

如果任何物件依賴於該資料表,則拒絕刪除該資料表。這是預設值。

範例

要銷毀兩個資料表 filmsdistributors

DROP TABLE films, distributors;

相容性

此命令符合 SQL 標準,除了標準只允許每個命令刪除一個資料表,以及 IF EXISTS 選項之外,後者是 PostgreSQL 擴充功能。

提交更正

如果您在文件中看到任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用 此表單 回報文件問題。