Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Vérification de la syntaxe de toutes les procédures stockées ?

Vous pouvez également le faire "sur place" - sans obtenir toutes les instructions de création.

En plus de définir NOEXEC ON , vous devrez également définir votre SHOWPLAN_* ON préféré (J'utilise SHOWPLAN_TEXT ). Vous pouvez maintenant vous débarrasser de votre étape 2 et simplement exécuter chaque procédure que vous avez récupérée à l'étape 1.

Voici un exemple utilisant une procédure stockée individuelle. Vous pouvez l'insérer dans votre boucle préférée :

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

L'exemple ci-dessus devrait générer le résultat suivant :