我计划删除除主键之外的所有索引。我自己制作了主键,但所有其他索引都是 SQL Server 的建议。
删除所有非主键索引后,计划使用 SQL Server Profiler 调优模板作为数据库调优顾问并创建索引。
通过这种方式,计划不要有未使用的索引或降低性能的索引。
这有多符合逻辑?
谢谢。
DECLARE @sql NVARCHAR(MAX) = N'';
SELECT @sql += N'DROP INDEX '
+ QUOTENAME(SCHEMA_NAME(o.[schema_id]))
+ '.' + QUOTENAME(o.name)
+ '.' + QUOTENAME(i.name) + ';'
FROM sys.indexes AS i
INNER JOIN sys.tables AS o
ON i.[object_id] = o.[object_id]
WHERE i.is_primary_key = 0
AND i.index_id <> 0
AND o.is_ms_shipped = 0;
PRINT @sql;
-- EXEC sp_executesql @sql;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)