Une procédure stockée en SQL est un groupe de requêtes SQL qui peuvent être enregistrées et réutilisées plusieurs fois. C'est très utile car cela réduit le besoin de réécrire les requêtes SQL. Il améliore l'efficacité, la réutilisabilité et la sécurité de la gestion des bases de données.
chaîne.format java
Les utilisateurs peuvent également transmettre des paramètres aux procédures stockées afin que la procédure stockée puisse agir sur les valeurs des paramètres transmises.
Les procédures stockées sont créées pour effectuer une ou plusieurs DML opérations sur la base de données. Ce n'est rien d'autre qu'un groupe de Instructions SQL qui accepte certaines entrées sous forme de paramètres, effectue certaines tâches et peut ou non renvoyer une valeur.
Syntaxe
Deux syntaxes importantes pour l'utilisation de procédures stockées dans SQL sont :
Syntaxe pour créer une procédure stockée
CREATE PROCEDURE nom_procédure
(paramètre1 data_type, paramètre2 data_type, …)
COMME
COMMENCER
— Instructions SQL à exécuter
FINtri de liste de tableaux Java
Syntaxe pour exécuter la procédure stockée
EXEC nom_procédure valeur_paramètre, valeur_paramètre2, ..
Paramètre
La partie la plus importante concerne les paramètres. Les paramètres sont utilisés pour transmettre des valeurs à la procédure. Il existe différents types de paramètres, qui sont les suivants :
- COMMENCER: C'est ce qui exécute directement ou on peut dire que c'est une partie exécutable.
- FIN: Jusqu'à cela, le code sera exécuté.
Exemple de procédure stockée SQL
Regardons un exemple de procédure stockée en SQL pour mieux la comprendre.
Imaginez une base de données nommée SampleDB, une table nommée Customers avec des exemples de données et une procédure stockée nommée GetCustomersByCountry.
La procédure stockée prend le paramètre Country et renvoie une liste de clients de la table Customers qui correspond au pays spécifié. Enfin, la procédure stockée est exécutée avec le paramètre Sri Lanka pour récupérer la liste des clients du Sri Lanka.
Requête:
-- Create a new database named 'SampleDB' CREATE DATABASE SampleDB; -- Switch to the new database USE SampleDB; -- Create a new table named 'Customers' CREATE TABLE Customers ( CustomerID INT PRIMARY KEY, CustomerName VARCHAR(50), ContactName VARCHAR(50), Country VARCHAR(50) ); -- Insert some sample data into the Customers table INSERT INTO Customers (CustomerID, CustomerName, ContactName, Country) VALUES (1, 'Shubham', 'Thakur', 'India'), (2, 'Aman ', 'Chopra', 'Australia'), (3, 'Naveen', 'Tulasi', 'Sri lanka'), (4, 'Aditya', 'Arpan', 'Austria'), (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain'); -- Create a stored procedure named 'GetCustomersByCountry' CREATE PROCEDURE GetCustomersByCountry @Country VARCHAR(50) AS BEGIN SELECT CustomerName, ContactName FROM Customers WHERE Country = @Country; END; -- Execute the stored procedure with parameter 'Sri lanka' EXEC GetCustomersByCountry @Country = 'Sri lanka';>
Note: Vous devrez vous assurer que le compte utilisateur dispose des privilèges nécessaires pour créer une base de données. Vous pouvez essayer de vous connecter en tant qu'utilisateur différent avec des privilèges administratifs ou contacter l'administrateur de la base de données pour accorder les privilèges nécessaires à votre compte utilisateur. Si vous utilisez un service de base de données basé sur le cloud, assurez-vous d'avoir correctement configuré le compte utilisateur et ses autorisations.
âge de Salman Khan
Sortir:
| Nom du client | Nom du contact |
|---|---|
| Naveen | Tulasi |
Points importants concernant les procédures stockées SQL
- Une procédure stockée est un code SQL préparé que vous pouvez enregistrer afin que le code puisse être réutilisé encore et encore.
- Les procédures stockées permettent d'enregistrer le code utilisé à plusieurs reprises dans la base de données et de l'exécuter à partir de là, plutôt qu'à partir du client. Cela fournit une approche plus modulaire de la conception de bases de données.
- Puisque les procédures stockées sont compilées et stockées dans la base de données, elles sont très efficaces. SQL Server compile chaque procédure stockée une fois, puis réutilise le plan d'exécution. Cela conduit à d’énormes améliorations de performances lorsque les procédures stockées sont appelées à plusieurs reprises.
- Les procédures stockées offrent une meilleure sécurité à vos données. Les utilisateurs peuvent exécuter une procédure stockée sans avoir besoin d’exécuter directement aucune des instructions. Par conséquent, un utilisateur peut obtenir l'autorisation d'exécuter une procédure stockée sans disposer d'aucune autorisation sur les tables sous-jacentes.
- Les procédures stockées peuvent réduire le trafic réseau et la latence, améliorant ainsi les performances des applications. Un seul appel à une procédure stockée peut exécuter plusieurs instructions.
- Les procédures stockées offrent une meilleure prise en charge de la gestion des erreurs.
- Les procédures stockées peuvent être utilisées pour fournir des fonctionnalités avancées de base de données, telles que la modification de données dans des tables et l'encapsulation de ces modifications dans des transactions de base de données.