Bonjour,
J'ai sur ma base de données beaucoup de procédures stokées (2500 environ) et je voudrai savoir quelles sont les procédures qui font des inserts, des deletes, des updates.
J'ai pensé à utiliser les tables systèmes comme suit :
ce qui me sort la liste des procédures avec leur définition. Je voudrai éviter de me taper toutes ces procédure a la main et faire directement un contains() sur la définition ma procédure pour avoir un résultat rapide et complètement sûr.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 select routine_name, routine_definition from information_schema.routines where routine_type='PROCEDURE' order by routine_name
J'ai donc modifié ma requête comme cela :
mais j'obtiens l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 select routine_name, routine_definition from information_schema.routines where routine_type='PROCEDURE' and contains(routine_definition,' delete ') order by routine_name
Est-ce que quelqu'un à une idée pour contourner le problème?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Msg*7601, Niveau*16, État*2, Ligne*1 Impossible d'utiliser le prédicat CONTAINS ou FREETEXT sur table ou vue indexée 'information_schema.routines', car il n'y a pas d'index de texte intégral.
Partager