如何使用C#从SQL Server获取估计的执行计划?

时间:2016-07-23 06:57:13

标签: c# sql-server

我知道如何使用SSMS获取它,但我如何使用C#和ADO.NET获取执行计划? (假设我知道如何在C#中处理普通查询。)

1 个答案:

答案 0 :(得分:3)

您似乎可以使用从Are there any way to programmatically execute a query with Include Actual Execution Plan and see whether any index suggestion or not

获取的以下查询
SET SHOWPLAN_ALL ON

此外,您可以使用SHOWPLAN_ALL选项,并可以在存储过程中将其设置为{{1}}(虽然我从未亲自测试过。所以只是一个建议)

  

当SET SHOWPLAN_ALL为ON时,SQL Server返回每个语句的执行信息而不执行它,并且不执行Transact-SQL语句。将此选项设置为ON后,将返回有关所有后续Transact-SQL语句的信息,直到该选项设置为OFF。例如,如果在SET SHOWPLAN_ALL为ON时执行CREATE TABLE语句,SQL Server将从涉及该表的后续SELECT语句返回错误消息,通知用户指定的表不存在。因此,后续对此表的引用将失败。当SET SHOWPLAN_ALL为OFF时,SQL Server将执行语句而不生成报告。