本文介绍如何使用 SQL Server Management Studio (SSMS) 或 Transact-SQL 删除 SQL Server 中的表列。
Caution
删除表中的某一列后,该列及其包含的所有数据都将删除。
不能删除具有 CHECK 约束的列。 必须首先删除该约束。
CHECK
不能删除具有 PRIMARY KEY 或 FOREIGN KEY 约束或者其他依赖项的列,但在 SSMS 中使用 表设计器 时除外。 在使用 SSMS 的 对象资源管理器 或 Transact-SQL 时,必须首先删除该列上的所有依赖关系。
PRIMARY KEY
FOREIGN KEY
要求对表具有 ALTER 权限。
ALTER
可以使用对象资源管理器或表设计器来删除 SSMS 中的列。
以下步骤说明如何在 SSMS 中使用对象资源管理器删除列:
连接到数据库引擎实例。
在“对象资源管理器”中,找到要从其中删除列的表,然后展开表,显示列名称 。
右键单击要删除的列,然后选择“删除” 。
在“删除对象” 对话框中,选择“确定” 。
如果该列包含约束或其他依赖关系,“删除对象” 对话框中会显示错误消息。 通过删除引用的约束解决该错误。
以下步骤说明如何在 SSMS 中使用表设计器删除列:
在“对象资源管理器” 中,右键单击要从其中删除列的表,然后选择“设计” 。
右键单击要删除的列,然后从快捷菜单上选择“删除列” 。
如果该列参与了关系( FOREIGN KEY 或 PRIMARY KEY ),则将显示一条消息,提示确认删除所选列及其关系。 Choose Yes .
可以在 SSMS、 Azure Data Studio 或命令行工具(例如 sqlcmd 实用程序 )中使用 Transact-SQL 删除列。
下面的示例展示了如何从表 column_b 中删除列 dbo.doc_exb 。 表和列必须已经存在。
column_b
dbo.doc_exb
ALTER TABLE dbo.doc_exb DROP COLUMN column_b; 如果该列包含约束或其他依赖项,则会返回一条错误消息。 通过删除引用的约束解决该错误。 有关更多示例,请参阅 ALTER TABLE。 Related content ALTER TABLE (Transact-SQL)
如果该列包含约束或其他依赖项,则会返回一条错误消息。 通过删除引用的约束解决该错误。
有关更多示例,请参阅 ALTER TABLE。
什么是 SQL Server Management Studio (SSMS)? Azure Data Studio Object Explorer Table Designer