Définition d'une procédure stockée
Les procédures (ou fonctions) stockées sont des blocs Transact-SQL nommés, pouvant être paramétrés, que l’on définit et stocke une seule fois dans la base.
La notion de procédure (ou fonction) stockée a été conçue dans l’esprit de grouper un ensemble de commandes SQL avec des instructions procédurales, pour constituer une unité de traitement pouvant être appelée à partir de n’importe quel programme ou directement sous l’analyseur de requêtes.
Les outils fournis à l’administrateur d'une base de données Microsoft SQL Server utilisent souvent des procédures stockées. Toutes les procédures préfixées par sp_ sont des procédures stockées du système. Elles sont créées dans la base de données Master lors de l’installation de Microsoft SQL Server et s’appuient sur les tables systèmes pour effectuer des tâches de gestion et d’administration.
L’aide de Transact-SQL fournit la liste de toutes les procédures stockées système.
Les procédures stockées présentent les avantages suivants :
Une exécution plus rapide, car l'instruction est précompilée et optimisée.
La réutilisation des plans compilés (contrairement aux vues).
La possibilité de gérer les dépendances entre le code SQL et les objets du moteur.
Une sécurité des types, car tous les paramètres d'entrée et de sortie et leurs types de données sont strictement définis.
Une meilleure sécurité, car les risques de manipulation(s) et d'injection(s) d'instructions SQL sont pratiquement nuls.
La possibilité de renvoyer plusieurs jeux de résultats en une seule visite à la base de données.
Une puissante couche de logique applicative (une procédure pouvant appeler des procédures supplémentaires, gérer des transactions, etc.).
Les procédures stockées sous Microsoft SQL Server peuvent prendre en paramètre et/ou retourner des entiers, des chaînes de caractère, des dates, des curseurs, des tables, des tables virtuelles et tout autre type défini dans SQL Server par défaut ou par les utilisateurs
Partager