SQL Server 索引管理——生成禁用索引删除脚本

SQL Server 索引管理——生成禁用索引删除脚本

 

禁用索引确定不再使用后,备份禁用索引,然后使用如下脚本,生成删除索引脚本,删除索引

DECLARE @sql VARCHAR(MAX);
SELECT @sql=STUFF((
                     SELECT 'DROP INDEX '+i.name+' ON '+QUOTENAME(s.name,'[')+ '.'
                               +QUOTENAME(t.name,'[')+' '+CHAR(10)
                     FROM sys.indexes i
                     LEFT JOIN sys.tables t ON i.[object_id]=t.[object_id]
                     LEFT JOIN sys.schemas s ON s.SCHEMA_ID=t.SCHEMA_ID
                     WHERE is_disabled=1
                           AND is_primary_key=0
                           AND is_unique=0
                     FOR XML PATH(''),TYPE).value('.','varchar(max)'),1,0,'');
SELECT @sql FOR XML PATH('');

如果喜欢,可以搜索关注 MSSQLServer 公众号,将有更多精彩内容分享:

                                                                 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章