删除索引
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Microsoft Fabric SQL 数据库
本主题将说明如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中删除索引。
本主题内容
开始之前:
若要删除索引,请使用:
开始之前
限制和局限
不能使用此方法删除作为 PRIMARY KEY 或 UNIQUE 约束的结果而创建的索引。 而必须删除该约束。 若要删除该约束和相应的索引,请在 Transact-SQL 中使用带有 DROP CONSTRAINT 子句的 ALTER TABLE。 有关详细信息,请参阅 Delete Primary Keys。
安全性
权限
要求对表或视图具有 ALTER 权限。 默认情况下,将向 sysadmin 固定服务器角色以及 db_ddladmin 和 db_owner 固定数据库角色授予此权限。
使用 SQL Server Management Studio
通过使用对象资源管理器删除索引
在“对象资源管理器”中,展开包含您要删除索引的表的数据库。
展开 “表” 文件夹。
展开包含您要删除的索引的表。
展开 “索引” 文件夹。
右键单击要删除的索引,然后选择“删除”。
在 “删除对象” 对话框中,确认正确的索引位于 “要重删除的对象” 网格中,然后单击 “确定”。
使用表设计器删除索引
在“对象资源管理器”中,展开包含您要删除索引的表的数据库。
展开 “表” 文件夹。
右键单击包含您要删除的索引的表,然后单击“设计”。
在“表设计器”菜单上,单击“索引/键”。
在“索引/键”对话框中,选择要删除的索引。
单击 “删除” 。
单击“关闭” 。
在“文件”菜单上,选择“保存”以保存 table_name。
“使用 Transact-SQL”
删除索引
在 “对象资源管理器” 中,连接到 数据库引擎的实例。
在标准菜单栏上,单击 “新建查询” 。
将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。
USE AdventureWorks2022; GO -- delete the IX_ProductVendor_BusinessEntityID index -- from the Purchasing.ProductVendor table DROP INDEX IX_ProductVendor_BusinessEntityID ON Purchasing.ProductVendor; GO
有关详细信息,请参阅 DROP INDEX (Transact-SQL)。