共用方式為


從資料表中刪除資料行

適用於: SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)

本文描述如何使用 SQL Server Management Studio (SSMS) 或 Transact-SQL,在 SQL Server 中刪除資料表資料行。

警告

當您從資料表中刪除資料行時,會刪除資料行及其所包含的所有資料。

限制

您無法刪除具有 CHECK 條件約束的資料行。 您必須先刪除條件約束。

除非在 SSMS 中使用資料表設計工具,否則您無法刪除具有 PRIMARY KEYFOREIGN KEY 條件約束或其他相依性的資料行。 使用 SSMS 中的物件總管或 Transact-SQL 時,您必須先移除資料行的所有相依性。

權限

必須具備資料表的ALTER權限。

使用 SQL Server Management Studio 刪除資料行

您可以使用物件總管或資料表設計工具,在 SSMS 刪除資料行。

使用物件總管來刪除資料行

下列步驟說明如何在 SSMS 中使用物件總管刪除資料行:

  1. 連線到資料庫引擎的執行個體。

  2. 物件總管中,尋找您想要從中刪除資料行的資料表,然後展開資料表以公開資料行名稱。

  3. 以滑鼠右鍵按一下您想要刪除的資料行,然後選擇 [刪除]

  4. 在 [刪除物件] 對話方塊中,選取 [確定]。

如果資料行包含條件約束或其他相依性,[刪除物件] 對話方塊會顯示錯誤訊息。 請刪除參考的條件約束,藉以解決此錯誤。

使用資料表設計工具來刪除資料行

下列步驟說明如何在 SSMS 中使用資料表設計工具刪除資料行:

  1. 物件總管中,以滑鼠右鍵按一下您想要從中刪除資料行的資料表,然後選擇 [設計]

  2. 以滑鼠右鍵按一下您想要刪除的資料行,然後從捷徑功能表中選擇 [刪除資料行]

  3. 如果資料行參與關聯性 (FOREIGN KEYPRIMARY KEY),則會有訊息提示您確認是否要刪除選取的資料行及其關聯性。 選擇 [ ]。

使用 Transact-SQL 刪除資料行

您可以在 SSMS、Azure Data Studio 或命令列工具 (例如 sqlcmd 公用程式) 中使用 Transact-SQL 刪除資料行。

下列範例會示範如何從資料表 dbo.doc_exb 刪除資料行 column_b。 資料表和資料行必須已經存在。

ALTER TABLE dbo.doc_exb DROP COLUMN column_b;
GO

如果資料行包含條件約束或其他相依性,會傳回錯誤訊息。 請刪除參考的條件約束,藉以解決此錯誤。

如需更多範例,請參閱 ALTER TABLE