您可以通过使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2012 中从您的数据库中删除表。
![]() |
---|
删除表之前一定要慎重考虑。 如果现有查询、视图、用户定义函数、存储过程或程序引用该表,删除操作将使这些对象无效。 |
本主题内容
开始之前:
限制和局限
安全性
使用以下工具删除表:
SQL Server Management Studio
Transact-SQL
开始之前
限制和局限
不能删除被 FOREIGN KEY 约束引用的表。 必须先删除引用 FOREIGN KEY 约束或引用表。 如果要在同一个 DROP TABLE 语句中删除引用表以及包含主键的表,则必须先列出引用表。
删除表时,表的规则或默认值将被解除绑定,与该表关联的任何约束或触发器将被自动删除。 如果要重新创建表,则必须重新绑定相应的规则和默认值,重新创建某些触发器,并添加所有必需的约束。
如果删除的表包含带有 FILESTREAM 属性的 varbinary (max) 列,则不会删除在文件系统中存储的任何数据。
不应在同一个批处理中对同一个表执行 DROP TABLE 和 CREATE TABLE。 否则,可能出现意外错误。
任何引用已删除表的视图或存储过程都必须显式删除或修改,以便删除对该表的引用。
安全性
权限
要求对此表所属架构拥有 ALTER 权限,对此表拥有 CONTROL 权限,或具有 db_ddladmin 固定数据库角色的成员身份。
[Top]
使用 SQL Server Management Studio
从数据库中删除表
在对象资源管理器中选择要删除的表。
右键单击该表,再从快捷菜单中选择**“删除”**。
此时,将显示一个消息框,提示您确认删除。 单击**“是”**。
注意
删除一个表将自动移除与该表之间的所有关系。
[Top]
使用 Transact-SQL
在查询编辑器中删除表
在**“对象资源管理器”**中,连接到数据库引擎的实例。
在标准菜单栏上,单击**“新建查询”**。
将以下示例复制并粘贴到查询窗口中,然后单击**“执行”**。
DROP TABLE dbo.PurchaseOrderDetail;
有关详细信息,请参阅 DROP TABLE (Transact-SQL)。
[Top]