2

在 SQL Server 中,可以选择使用查询提示。例如

SELECT c.ContactID
FROM Person.Contact c
WITH (INDEX(AK_Contact_rowguid))

我正在摆脱未使用的索引,并且想知道如何确定索引是否用作查询提示。有人对我如何做到这一点有建议吗?

干杯,乔

4

2 回答 2

1

您只能为客户端 SQL 运行分析器或sys.sql_modules以其他方式搜索。

要查找未使用的索引,您通常会使用基于 dmvs 的东西。这将向您显示正在使用和需要保留的索引。

于 2010-05-27T05:04:44.817 回答
0

这是一个很好的问题,我想我不能给你一个简单的答案。如果是我,我会在 Management Studio 中编写整个数据库的脚本,并对索引名称进行文本搜索。我也会在我所有的报告和源代码中这样做,以确保也是如此。

我认为提示不会进入 sys.dependencies 用于 procs 一个函数,但即使他们这样做了,你也会有一些临时 SQL 可能要处理,所以这就是我使用文本搜索路由的原因.

于 2010-05-26T22:04:32.570 回答