Maison  >  Article  >  base de données  >  exemple de procédure stockée Oracle

exemple de procédure stockée Oracle

PHPz
PHPzoriginal
2023-05-18 09:30:07999parcourir

Dans la base de données Oracle, une procédure stockée est un bloc répétable de code SQL qui peut accepter des paramètres d'entrée et renvoyer des paramètres de sortie. C'est similaire à une fonction, sauf que les procédures stockées peuvent être appelées et exécutées dans la base de données, permettant des applications plus complexes et évolutives. Cet article expliquera comment écrire une procédure stockée Oracle simple et démontrera comment utiliser la procédure stockée dans des applications pratiques.

Création d'une procédure stockée

Dans Oracle, la création d'une procédure stockée nécessite les étapes suivantes :

  1. Création de la structure d'une procédure stockée

La structure d'une procédure stockée comprend la définition du nom de la procédure, des paramètres d'entrée, des paramètres de sortie et corps de procédure. Ce qui suit est un exemple de structure simple de procédure stockée Oracle :

CREATE OR REPLACE PROCEDURE get_employee_salaries (id IN NUMBER, salaire OUT NUMBER)
IS
BEGIN
SELECT salaire INTO salaire FROM employes WHERE employe_id = id;
END;

at Dans l'exemple ci-dessus, get_employee_salaries est le nom du processus, id est le paramètre d'entrée et salaire est le paramètre de sortie.

  1. Écriture du corps de la procédure

Le corps de la procédure est la logique réelle à l'intérieur de la procédure stockée. Dans cet exemple, le corps du processus utilise le paramètre d'entrée id pour interroger le salaire dans la table des employés, puis stocke le résultat dans le paramètre de sortie salaire.

  1. Compiler les procédures stockées

Une fois le code SQL qui crée la procédure stockée écrit dans la base de données, le code doit être compilé. Dans Oracle, cela peut être fait via la commande suivante :

SQL> CREATE OR REPLACE PROCEDURE get_employee_salaries (id IN NUMBER, salaire OUT NUMBER)
IS
BEGIN
SELECT salaire INTO salarié WHERE employ_id = id;
END;

Cette commande créera une procédure stockée nommée get_employee_salaries.

Comment utiliser les procédures stockées

Une fois qu'une procédure stockée est créée, elle peut être utilisée dans l'application pour être appelée en cas de besoin. Voici un exemple de la façon d'appeler la procédure stockée dans l'exemple ci-dessus :

DECLARE

emp_salary NUMBER;
BEGIN
get_employee_salaries(100, emp_salary);
DBMS_OUTPUT.PUT_LINE('Employee 100 gagne ' || TO_CHAR(emp_salary)) ;
END ;

Ce code appellera la procédure stockée get_employee_salaries avec 100 comme paramètre d'entrée id. Stockez le résultat dans emp_salary, puis affichez-le dans la sortie. S'il est exécuté avec succès, le résultat sera similaire à ce qui suit :

L'employé 100 gagne 4 400

Cet exemple montre simplement un exemple de procédure stockée Oracle simple. En fait, les procédures stockées peuvent effectuer de nombreuses tâches complexes et assurer l'évolutivité et la répétabilité de la base de données. Par exemple, les procédures stockées peuvent être utilisées pour mettre en œuvre une transformation de données complexe, un nettoyage de données, une génération de rapports, une automatisation de processus métier et d'autres tâches.

Résumé

Les procédures stockées Oracle sont un outil très puissant et utile qui peut rendre les applications de base de données plus flexibles, évolutives et efficaces. Cet article montre comment créer et utiliser une procédure stockée Oracle simple. En fait, les procédures stockées peuvent accomplir des tâches plus complexes et fournir de puissantes fonctionnalités aux applications de bases de données. Par conséquent, l’apprentissage et la maîtrise des procédures stockées Oracle sont l’une des compétences que tout développeur de bases de données doit maîtriser.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn