Maison  >  Article  >  base de données  >  Focus sur les procédures stockées compilées Oracle

Focus sur les procédures stockées compilées Oracle

PHPz
PHPzoriginal
2023-04-04 09:14:142360parcourir

À mesure que la quantité de données dans la base de données continue d'augmenter, l'importance des procédures stockées est progressivement devenue évidente. L'écriture et l'utilisation de procédures stockées peuvent améliorer la réutilisabilité du code et l'efficacité des requêtes de données, facilitant ainsi l'exploitation de la base de données par les développeurs et les utilisateurs. Cet article se concentrera sur la façon de compiler des procédures stockées.

1. Comprendre les procédures stockées

Avant de commencer à écrire des procédures stockées, comprenons d'abord les concepts de base des procédures stockées. Une procédure stockée est un ensemble d'instructions SQL précompilées qui peuvent être appelées et exécutées. Différentes des instructions SQL générales, les procédures stockées peuvent fournir plusieurs paramètres d'entrée et résultats de sortie, et prendre en charge des opérations commerciales complexes sur les données, telles que des calculs, des jugements conditionnels, des boucles, etc.

Les avantages des procédures stockées sont :

  1. Amélioration de la réutilisabilité du code : certaines logiques métier dans les procédures stockées peuvent être appelées à plusieurs endroits, évitant ainsi la saisie répétée du code.
  2. Amélioration de l'efficacité des requêtes de données : les procédures stockées peuvent être précompilées, ce qui réduit le coût d'analyse et d'optimisation des instructions SQL et améliore l'efficacité des requêtes.
  3. Améliorez la sécurité des données : le processus stocké peut effectuer une vérification des paramètres et une vérification de la sécurité, garantissant la légalité et la sécurité des opérations de données.

2. Écrire des procédures stockées

Dans la base de données Oracle, nous devons utiliser le langage PL/SQL pour écrire des procédures stockées. PL/SQL est un langage précompilé spécialement conçu par Oracle pour des objets tels que des procédures stockées, des déclencheurs et des fonctions. Il peut être intégré dans des instructions SQL et fournit des structures de blocs, des instructions de boucle, une gestion des exceptions et d'autres fonctionnalités, rendant l'écriture de procédures stockées plus pratique. et efficace.

Les étapes pour écrire une procédure stockée sont les suivantes :

  1. Créer une procédure stockée

Nous pouvons utiliser l'instruction CREATE PROCEDURE pour créer une procédure stockée la suivante :

CREATE [OR REPLACE] PROCEDURE Nom de la procédure stockée
Déclaration des paramètres
IS
Corps du programme
END Nom de la procédure stockée

Parmi eux, le nom de la procédure stockée est un nom auto-défini, la déclaration des paramètres peut contenir des paramètres d'entrée et de sortie et le corps du programme est le logique métier réelle. Si vous devez mettre à jour une procédure stockée existante, vous pouvez utiliser le mot clé OR REPLACE.

  1. Écrivez le corps du programme

Le corps du programme contient la logique métier réelle de la procédure stockée. Nous pouvons utiliser IF, LOOP, WHILE et d'autres instructions pour effectuer des jugements conditionnels, des boucles et d'autres opérations, et exécuter des instructions SQL via l'instruction EXECUTE IMMEDIATE.

Vous devez faire attention aux points suivants lors de l'écriture du corps du programme :

(1) Toutes les instructions dans le corps du programme doivent se terminer par un point-virgule

(2) Vous pouvez utiliser DECLARE pour déclarer des variables entières, des variables de caractères ; , etc.;

(3) Vous pouvez utiliser l'instruction EXCEPTION pour gérer les erreurs afin de garantir la robustesse du programme.

Ce qui suit est un exemple simple de procédure stockée pour interroger des informations sur un employé :

CREATE OR REPLACE PROCEDURE GET_EMPLOYEE(

 EMP_ID IN NUMBER,
 EMP_NAME OUT VARCHAR2,
 EMP_SALARY OUT NUMBER)

IS
BEGIN

 SELECT EMPLOYEE_NAME, EMPLOYEE_SALARY INTO EMP_NAME, EMP_SALARY
 FROM EMPLOYEE_TABLE WHERE EMPLOYEE_ID = EMP_ID;

END GET_EMPLOYEE;

Dans l'exemple ci-dessus, nous avons défini 3 paramètres : un paramètre d'entrée EMP_ID et deux paramètres de sortie EMP_NAME et EMP_SALARY. Utilisez l'instruction SELECT INTO dans le corps du programme pour interroger les données qualifiées de la table des employés et attribuez les résultats de la requête aux paramètres de sortie

3. Compilez la procédure stockée

. Après avoir modifié la procédure stockée, nous devons la compiler pour confirmer l'exactitude et la faisabilité de sa syntaxe, et la sauvegarder dans la base de données. La base de données Oracle propose deux méthodes de compilation : la compilation en ligne de commande et la compilation graphique

  1. Compilation en ligne de commande
  2. .

Nous pouvons utiliser des outils de ligne de commande tels que SQL*Plus ou SQL Developer pour compiler la procédure stockée. Entrez l'instruction suivante dans la ligne de commande pour compiler :

SQL> CREATE [OR REPLACE] PROCEDURE Nom de la procédure stockée

 参数声明

IS.

 程序体

END nom de la procédure stockée ;

Parmi eux, le mot-clé OR REPLACE peut être utilisé pour remplacer la procédure stockée existante, et la déclaration des paramètres peut inclure des paramètres d'entrée et de sortie, etc.

  1. Compilation graphique

Oracle SQL Developer est un outil de gestion de base de données graphique couramment utilisé, nous pouvons l'utiliser pour écrire et compiler des procédures stockées.

Dans SQL Developer, nous entrons dans l'onglet "Procédures" et y créons un nouveau stockage. Entrez le code de la procédure stockée dans la procédure. éditeur et cliquez sur le bouton "Compiler" pour la compiler. Une fois la procédure stockée compilée avec succès, elle sera enregistrée dans la base de données

Résumé :

L'écriture de procédures stockées peut grandement améliorer l'efficacité des opérations de la base de données. PL/SQL est un langage d'écriture de procédures stockées puissant, flexible et fiable dans la base de données Oracle. L'écriture et la compilation de procédures stockées sont une compétence très importante. J'espère que grâce à l'introduction de cet article, vous pourrez mieux comprendre les procédures stockées et le langage PL/SQL. , et utilisez-les plus efficacement pour mettre en œuvre des opérations de logique métier

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