Procédures stockées: comme les fonctions pour votre SQL.
Une procédure stockée est un lot d'instructions SQL créées et stockées dans une base de données. Vous pouvez réutiliser une procédure stockée encore et encore.
Une procédure stockée peut accepter des paramètres, exécuter une requête et renvoyer des résultats. De nombreux utilisateurs peuvent appeler une procédure stockée et différentes applications peuvent l'appeler avec différentes valeurs de paramètres.
Quels sont les avantages de l'utilisation de procédures stockées ?
En plus de permettre à plusieurs utilisateurs et applications de la réutiliser, une procédure stockée présente d'autres avantages.
- Il est facile à modifier. Vous pouvez modifier une procédure stockée si nécessaire et ces mises à jour seront reflétées pour tous les utilisateurs. De plus, vous n'avez pas besoin de redéployer votre application lorsque vous modifiez la procédure stockée.
- Cela réduit le trafic réseau car le serveur ne transmet que le nom de la procédure sur le réseau et non l'intégralité de la requête.
- Il améliore la sécurité de la base de données puisque les utilisateurs n'ont pas d'accès direct aux tables. Pour apporter des modifications, ils doivent appeler la procédure stockée. Cela empêche les attaques par injection SQL car les utilisateurs ne peuvent pas écrire directement dans les tables sous-jacentes.
Un moteur de base de données comme MySQL a de nombreuses fonctionnalités de sécurité vous devriez être au courant.
Syntaxe de création d'une procédure stockée dans SQL Server
La syntaxe de création d'une procédure stockée est la suivante :
CRÉERPROCÉDURE nom_procédure
COMME
instruction_sql
ALLER;
Exécutez cette commande pour exécuter la procédure stockée.
nom_procédure EXEC ;
Exemple de procédure stockée simple dans SQL Server
Voici un exemple de procédure stockée qui sélectionne tous les articles d'une base de données d'articles.
CRÉERPROCÉDURE Tous les articles
COMME
SÉLECTIONNER * DEPUIS Article
ALLER;
Il s'agit d'un exemple simple, mais vous pouvez faire beaucoup plus avec des procédures stockées comme l'acceptation de paramètres et la mise à jour d'enregistrements.
Comment créer une procédure stockée qui accepte des paramètres
Par exemple, modifiez la procédure stockée simple pour accepter un nombre comme paramètre et utilisez-le pour renvoyer les publications avec un nombre de vues supérieur au nombre.
CRÉERPROCÉDURE Articles_populaires(@views entier)
COMME
SÉLECTIONNER * DEPUIS Article
WHERE nombre_vues >= @vues_compter
ALLER;
Utilisez cette commande pour exécuter la procédure stockée avec un paramètre.
EXEC Popular_Articles 300 ;
La procédure renvoie les articles dont le nombre de vues est supérieur à 300.
Apprendre SQL avant d'utiliser des procédures stockées
Les procédures stockées vous permettent de réutiliser un groupe d'instructions SQL. Ils améliorent également la sécurité des bases de données, réduisent le trafic réseau et sont faciles à modifier.
L'apprentissage des procédures stockées est donc important, mais vous devez d'abord avoir une solide compréhension de SQL.