0
使用請看下面的「代碼」執行計劃重用
define stmt1 = 'insert into T(a, b) values(1, 1);
define stmt2 = 'select * from T';
MSSqlCommand.Execute(stmt1;stmt2);
MSSqlCommand.Execute(stmt2);
調查緩存的查詢計劃:
SELECT [cp].[refcounts]
, [cp].[usecounts]
, [cp].[objtype]
, [st].[dbid]
, [st].[objectid]
, [st].[text]
, [qp].[query_plan]
FROM sys.dm_exec_cached_plans cp
CROSS APPLY sys.dm_exec_sql_text (cp.plan_handle) st
CROSS APPLY sys.dm_exec_query_plan (cp.plan_handle) qp ;
我的印象是那首「執行」生成複合的執行計劃,而不是兩個單獨的執行計劃,從而禁用第二個「執行」重用在第一個執行生成的任何執行計劃。
我對不對?