我知道如何使用SSMS获取它,但我如何使用C#和ADO.NET获取执行计划? (假设我知道如何在C#中处理普通查询。)
答案 0 :(得分:3)
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将执行语句而不生成报告。