También puede hacer esto "in situ", sin obtener todas las declaraciones de creación.
Además de configurar NOEXEC ON
, también deberá configurar su SHOWPLAN_* ON
(Uso SHOWPLAN_TEXT
). Ahora puede deshacerse del paso 2 y simplemente ejecutar cada procedimiento que recuperó en el paso 1.
Aquí hay una muestra usando un procedimiento almacenado individual. Puedes incorporarlo a tu loop favorito:
create procedure tests @bob int as
select * from missing_table_or_view
go
set showplan_text on;
go
set noexec on
exec tests
set noexec off
go
set showplan_text off;
go
drop procedure tests
go
El ejemplo anterior debería generar el siguiente resultado: