Qu’est-ce qu’une procédure stockée ?

Une procédure stockée est un ensemble d’instructions SQL (Structured Query Language) avec un nom attribué, qui sont stockées dans un système de gestion de base de données relationnelle (RDBMS) en tant que groupe, de sorte qu’elles peuvent être réutilisées et partagées par plusieurs programmes.

Les procédures stockées peuvent accéder aux données d’une base de données ou les modifier, mais elles ne sont pas liées à une base de données ou à un objet spécifique, ce qui offre un certain nombre d’avantages.

Avantages de l’utilisation de procédures stockées

Une procédure stockée fournit une couche de sécurité importante entre l’interface utilisateur et la base de données. Il prend en charge la sécurité via des contrôles d’accès aux données, car les utilisateurs finaux peuvent saisir ou modifier des données, mais n’écrivent pas de procédures. Une procédure stockée préserve l’intégrité des données car les informations sont saisies de manière cohérente. Cela améliore la productivité car les instructions d’une procédure stockée ne doivent être écrites qu’une seule fois.

Les procédures stockées offrent des avantages par rapport à l’intégration de requêtes dans une interface utilisateur graphique (GUI). Les procédures stockées étant modulaires, il est plus facile de dépanner lorsqu’un problème survient dans une application. Les procédures stockées sont également réglables, ce qui élimine le besoin de modifier le code source de l’interface graphique pour améliorer ses performances. Il est plus facile de coder des procédures stockées que de créer une requête via une interface graphique.

L’utilisation de procédures stockées peut réduire le trafic réseau entre les clients et les serveurs, car les commandes sont exécutées comme un seul lot de code. Cela signifie que seul l’appel pour exécuter la procédure est envoyé sur un réseau, au lieu que chaque ligne de code soit envoyée individuellement.

Procédure stockée en SQL

Les procédures stockées dans SQL Server peuvent accepter des paramètres d’entrée et renvoyer plusieurs valeurs de paramètres de sortie ; dans SQL Server, les procédures stockées programment des instructions pour effectuer des opérations dans la base de données et renvoyer une valeur d’état à une procédure appelante ou à un lot.

Les procédures définies par l’utilisateur sont créées dans une base de données définie par l’utilisateur ou dans toutes les bases de données système, sauf lorsqu’une lecture seule (base de données de ressources) est utilisée. Ils sont développés en Transact-SQL (T-SQL) ou une référence à Microsoft. Les procédures temporaires sont stockées dans tempdb et il existe deux types de procédures temporaires : locales et globales. Les procédures locales ne sont visibles que pour la connexion utilisateur actuelle, tandis que les procédures globales sont visibles pour tout utilisateur après leur création. Les procédures système arrivent avec SQL Server et sont stockées physiquement dans une base de données interne à ressources cachées. Ils apparaissent dans le schéma SYS de chaque système, ainsi que dans une base de données définie par l’utilisateur.

Comment exécuter une procédure stockée
Comment exécuter une procédure stockée

Procédure stockée dans Oracle

Le langage de base de données d’Oracle, PL/SQL, est composé de procédures stockées, qui créent des applications au sein de la base de données d’Oracle. Les professionnels de l’informatique utilisent des programmes stockés dans la base de données d’Oracle pour écrire et tester correctement le code, et ces programmes deviennent des procédures stockées une fois compilés.

Une procédure stockée dans Oracle suit la structure de base des blocs PL/SQL, qui se compose de parties déclaratives, exécutables et de gestion des exceptions.

Procédure stockée vs fonction

Les procédures et fonctions stockées peuvent être utilisées pour accomplir la même tâche. Les deux peuvent être personnalisés dans le cadre de n’importe quelle application, mais les fonctions sont conçues pour envoyer leur sortie à une requête ou à une instruction T-SQL. Les procédures stockées sont conçues pour renvoyer des sorties à l’application, tandis qu’une fonction définie par l’utilisateur renvoie des variables de table et ne peut pas modifier l’environnement du serveur ou l’environnement du système d’exploitation.

Similaire  Sept secrets de SQL Server Management Studio