Un guide complet sur la procédure et la fonction dans PL SQL
Publié: 2023-01-30Les langages de programmation sont un système d'écriture de programmes informatiques. Alors que de nombreux langages de programmation sont basés sur du texte, d'autres peuvent également être graphiques. Ces langages aident les programmeurs à communiquer avec l'ordinateur. Le langage de requête structuré (SQL) est l'un de ces langages de programmation qui aide à stocker, manipuler et récupérer des données stockées dans une base de données relationnelle. Dans le guide d'aujourd'hui, nous partagerons des détails sur l'exécution des blocs de noms (procédures et fonctions) qui sont des sous-programmes pour PL SQL. Donc, si vous avez cherché un guide complet sur la procédure et la fonction en PL SQL, vous avez atterri sur la bonne page. Dans ce document, en plus de couvrir le sujet de procédure stockée PL SQL, vous découvrirez également un exemple de procédure PL SQL. Sans oublier la procédure d'appel PL SQL, la procédure de sortie PL SQL et l'exemple de fonction PL SQL qui sont tout aussi importants à connaître si vous êtes un programmeur en herbe. Alors, commençons avec notre guide complet sur PL SQL.
Contenu
- Un guide complet sur la procédure et la fonction dans PL SQL
- Qu'est-ce que PL-SQL ?
- Qu'est-ce que la procédure et la fonction dans PL SQL ?
- Comment créer une procédure stockée et une fonction en PL SQL ?
- Avantages de la procédure stockée et de la fonction dans PL SQL
- Syntaxe pour la création d'une procédure stockée
- Exemple de procédure SQL PL
- Syntaxe pour la création d'une fonction dans PL SQL
- Exemple de fonction SQL PL
- Qu'est-ce que la procédure de sortie SQL PL ?
- Différence entre la procédure stockée et la procédure de fonction
Un guide complet sur la procédure et la fonction dans PL SQL
Ici, nous avons montré les procédures et fonctions PL SQL avec des exemples détaillés.
Qu'est-ce que PL-SQL ?
- PL SQL est une forme abrégée des extensions de langage procédural à SQL .
- PL SQL est un langage structuré en blocs pour les programmeurs qui les aide à combiner la puissance de SQL avec des instructions procédurales.
- C'est l'extension procédurale d'Oracle Corporation .
- Ce langage procédural est disponible dans la base de données Oracle , la base de données en mémoire Times Ten et IBM Db2 .
- Au moment de l'exécution, PL/SQL et SQL offrent une efficacité optimale en s'exécutant dans le même processus serveur .
- PL SQL garantit un traitement efficace et non perturbé des instructions SQL en améliorant la portabilité , la sécurité et la robustesse de la base de données.
- PL SQL signifie simplement indiquer au compilateur ce qu'il faut faire via SQL et comment le faire de manière procédurale .
- PL SQL donne plus de contrôle aux programmeurs grâce à l' utilisation de boucles , de conditions et de concepts orientés objet .
Qu'est-ce que la procédure et la fonction dans PL SQL ?
- PL SQL a deux sous-programmes, appelés procédures et fonctions .
- Habituellement, une procédure est utilisée pour effectuer une action et une fonction pour calculer une valeur .
- Les sous-programmes en PL SQL ont une partie déclarative , une partie exécutable et une partie optionnelle de gestion des exceptions .
- Ces sous-programmes peuvent être créés et enregistrés dans la base de données en tant qu'objets de base de données.
- Les sous-programmes de procédure et de fonction dans PL SQL renvoient une seule valeur qui est principalement utilisée pour calculer et renvoyer une valeur .
- Ces sous-programmes sont simplement une collection d' instructions PL/SQL et SQL qui peuvent exécuter une tâche spécifique .
Comment créer une procédure stockée et une fonction en PL SQL ?
Lorsqu'un bloc de code pour une procédure stockée ou une fonction PL SQL est écrit, il est compilé par le moteur Oracle. Une fois compilé, il est stocké en tant qu'objet de base de données. La procédure stockée ou le bloc fonctionnel de code est composé de trois parties :
- Partie déclarative : dans cette partie, les variables, les constantes, le curseur ou les exceptions qui doivent être utilisés par la procédure ou la fonction sont déclarés.
- Partie exécutable : Dans cette partie, la définition de la procédure ou de la fonction qui est créée est écrite. Cette partie comprend également des instructions PL/SQL ou SQL affectant des valeurs, manipulant des données et contrôlant l'exécution.
- Partie de gestion des exceptions : Cette dernière partie est facultative et y sont écrites les exceptions attendues qui peuvent survenir lors de l'exécution du code écrit dans la partie exécutable.
Avantages de la procédure stockée et de la fonction dans PL SQL
Avant de découvrir l'exemple de procédure PL SQL, vous devez d'abord vous familiariser avec les avantages des sous-programmes de procédure et de fonction.
- Améliorer les performances de la base de données : le moteur Oracle aide à la compilation automatique. De plus, chaque fois qu'une procédure ou une fonction d'appel PL SQL est effectuée, le moteur Oracle charge le code compilé dans SGA, System Global Area, ce qui permet une exécution plus rapide.
- Réutilisabilité et pas de redondance : le nombre de lignes de code ne peut pas être écrit de manière répétée car le même bloc de code pour une procédure ou une fonction peut être appelé un nombre illimité de fois sur plusieurs données.
- Sécurité : La sécurité de la base de données est également maintenue grâce à l'utilisation de procédures ou de fonctions stockées, car elle permet de contrôler l'utilisation et leur accès en accordant des autorisations aux utilisateurs. Cependant, l'autorisation de modifier ou de manipuler la base de données n'est pas accordée aux utilisateurs.
- Intégrité : Un autre avantage de l'utilisation de la procédure ou de la fonction stockée PL SQL est qu'elle garantit l'intégrité car elles sont stockées en tant qu'objets de base de données par le moteur Oracle.
- Enregistrer la mémoire : l'un des nombreux avantages des procédures ou fonctions stockées est qu'elles partagent la mémoire, ce qui permet d'économiser de la mémoire en tant que copie unique d'une procédure ou d'une fonction pouvant être chargée par un certain nombre d'utilisateurs autorisés à faire de même.
Lisez aussi : Comment réparer l'erreur javascript:void(0)
Syntaxe pour la création d'une procédure stockée
Vous pouvez regarder la syntaxe ci-dessous qui est utilisée pour créer une procédure stockée dans Oracle :
CRÉER OU REMPLACER LA PROCÉDURE <nom_procédure> (<nom_variable>IN/OUT/IN OUT <type de données>, <nom_variable>IN/OUT/IN OUT <type de données>,...) IS/AS déclaration variable/constante ; COMMENCER -- Corps du sous-programme PL/SQL ; EXCEPTION -- Bloc de gestion des exceptions ; END <nom_procédure> ;
Dans le code ci-dessus :
- Procedure_name représente le nom de la procédure.
- Variable_name représente le nom de la variable utilisée dans la procédure stockée.
- La procédure Créer ou Remplacer représente un mot-clé utilisé pour spécifier le nom de la procédure à créer.
- Begin , Exception et End représentent des mots-clés utilisés pour indiquer que différentes sections de la procédure sont créées.
- IN/OUT/IN OUT représente les modes de paramètres dans lesquels IN fait référence au mode READ ONLY qui est utilisé pour une variable via laquelle il acceptera la valeur de l'utilisateur. C'est le mode de paramétrage par défaut.
- OUT fait référence au mode WRITE ONLY qui est utilisé pour une variable qui renvoie la valeur à l'utilisateur.
- IN OUT fait référence au mode READ et WRITE qui est utilisé pour une variable qui acceptera une valeur ou renverra une valeur à l'utilisateur.
- <procedure_name> représente la fin de la définition de la procédure. Vous pouvez aussi simplement utiliser END à sa place.
Exemple de procédure SQL PL
Pour le code de procédure ci-dessous, voici un exemple simple qui démontrera clairement l'utilisation de la procédure stockée pour additionner deux nombres :
activez la sortie du serveur ; CRÉER OU REMPLACER LA PROCÉDURE Somme ( où un nombre IN, b nombre IN) EST un nombre c ; COMMENCER c := a+b; dbms_output.put_line ('Somme de deux nos= '|| c); FIN Somme ;
En cas d'appel de la procédure, le code suivant sera exécuté :
activez la sortie du serveur ; DÉCLARER x nombre ; y nombre ; COMMENCER x := &x; y := &y; Somme(x,y); FINIR; Où: Entrez la valeur pour x : 10 Entrez la valeur pour y : 20 Somme de deux non : 30
La procédure SQL PL a été créée avec succès.
Syntaxe pour la création d'une fonction dans PL SQL
Maintenant que vous savez comment créer une syntaxe pour une procédure stockée et son exemple, il est temps de faire la lumière sur la création de fonctions en PL/SQL :
CRÉER OU REMPLACER LA FONCTION <nom_fonction> (<nom_variable> DANS <type_données>, <nom_variable> IN <type_données>,...) RETURN <type de données> IS/AS déclaration variable/constante ; COMMENCER -- Corps du sous-programme PL/SQL ; EXCEPTION -- Bloc de gestion des exceptions ; FIN <nom_fonction> ;
Dans le code ci-dessus :
- Function_name représente le nom de la fonction.
- Variable_name représente le nom de la variable utilisée dans la fonction.
- La fonction Créer ou Remplacer représente un mot-clé utilisé pour le nom de la fonction à créer.
- IN représente le mode READ ONLY qui est utilisé pour une variable par laquelle il acceptera la valeur de l'utilisateur. C'est le paramètre par défaut.
- Return représente un mot-clé suivi d'un type de données spécifiant le type de données d'une valeur que la fonction va renvoyer.
Lisez également: Échec de la commande de correction avec le code d'erreur 1 Python Egg Info
Exemple de fonction SQL PL
Vous trouverez ci-dessous un exemple de la fonction PL SQL qui illustre l'utilisation de la fonction pour additionner deux nombres :
activez la sortie du serveur ; CREATE OR REPLACE FUNCTION Sum(a IN number, b IN number) RETURN Number IS c nombre ; COMMENCER c := a+b; RETOUR c; FINIR;
En cas d'appel de la fonction sum, le code suivant sera exécuté :
activez la sortie du serveur ; DÉCLARER numéro no1 ; numéro no2 ; numéro de résultat ; COMMENCER no1 := &no1; no2 := &no2; résultat := Somme(no1,no2); dbms_output.put_line('Somme de deux nos='||résultat); FINIR; Où: Entrez la valeur pour no1 : 5 Entrez la valeur pour no2 : 5 Somme de deux non : 10
La procédure SQL PL a été créée avec succès.
Lisez la section suivante pour connaître la procédure de sortie PL SQL.
Qu'est-ce que la procédure de sortie SQL PL ?
Exit aide lorsque l'instruction quitte l'itération actuelle de la boucle une fois que la condition de sa clause WHEN est satisfaite et transfère le contrôle à la fin de la boucle en cours. Les instructions de sortie ne peuvent pas être utilisées en dehors des boucles et sont destinées à quitter une boucle soit de manière inconditionnelle à l'aide des instructions Exit et Continue, soit de manière conditionnelle à l'aide des instructions Exit When et Continue When.
Différence entre la procédure stockée et la procédure de fonction
Maintenant que vous connaissez la procédure et la fonction dans PL SQL, il est enfin temps de connaître également la différence fondamentale entre les deux :
- La procédure stockée peut ou non renvoyer une valeur à la partie appelante du programme, tandis que la fonction renvoie une valeur à la partie appelante du programme.
- La procédure stockée renvoie une valeur à l'aide du paramètre OUT tandis que la fonction renvoie la valeur à l'aide de RETURN.
- La procédure stockée utilise les paramètres IN, OUT, IN OUT alors que la fonction utilise uniquement le paramètre IN.
- La procédure stockée ne spécifie pas le type de données de la valeur si elle doit être renvoyée après un appel, tandis que la fonction spécifie le type de données de la valeur qui doit être renvoyée après un appel.
- La procédure stockée ne peut pas être appelée à partir du bloc de fonction de code alors que la fonction peut être appelée à partir du bloc de procédure de code.
Recommandé:
- RAM DDR4 vs DDR5 : quelle est la meilleure pour les jeux ?
- Quels sont les types de maquettes ?
- Comment analyser le texte
- 4 façons de diviser une chaîne par délimiteur en SQL
Nous espérons que notre doc sur la procédure et la fonction dans PL SQL a été utile et a réussi à répondre à tous vos doutes sur PL SQL et leurs sous-programmes, procédure et fonction, procédure de sortie PL SQL et plus encore. Si nous vous avons aidé de quelque manière que ce soit ou s'il y a d'autres questions de votre part, veuillez laisser vos commentaires ci-dessous pour nous le faire savoir.