從資料表中刪除資料行
適用於: 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 KEY
或 FOREIGN KEY
條件約束或其他相依性的資料行。 使用 SSMS 中的物件總管或 Transact-SQL 時,您必須先移除資料行的所有相依性。
權限
必須具備資料表的ALTER
權限。
使用 SQL Server Management Studio 刪除資料行
您可以使用物件總管或資料表設計工具,在 SSMS 刪除資料行。
使用物件總管來刪除資料行
下列步驟說明如何在 SSMS 中使用物件總管刪除資料行:
連線到資料庫引擎的執行個體。
在物件總管中,尋找您想要從中刪除資料行的資料表,然後展開資料表以公開資料行名稱。
以滑鼠右鍵按一下您想要刪除的資料行,然後選擇 [刪除]。
在 [刪除物件] 對話方塊中,選取 [確定]。
如果資料行包含條件約束或其他相依性,[刪除物件] 對話方塊會顯示錯誤訊息。 請刪除參考的條件約束,藉以解決此錯誤。
使用資料表設計工具來刪除資料行
下列步驟說明如何在 SSMS 中使用資料表設計工具刪除資料行:
在物件總管中,以滑鼠右鍵按一下您想要從中刪除資料行的資料表,然後選擇 [設計]。
以滑鼠右鍵按一下您想要刪除的資料行,然後從捷徑功能表中選擇 [刪除資料行]。
如果資料行參與關聯性 (
FOREIGN KEY
或PRIMARY 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。