Maison  >  Article  >  base de données  >  Qu'est-ce que la procédure stockée Oracle

Qu'est-ce que la procédure stockée Oracle

醉折花枝作酒筹
醉折花枝作酒筹original
2021-04-16 14:29:2816483parcourir

Dans Oracle, une procédure stockée est un ensemble d'instructions SQL pour remplir une fonction spécifique. Elle est compilée et stockée dans la base de données. L'utilisateur l'exécute en spécifiant le nom de la procédure stockée et en donnant les paramètres ; est "créer ou remplacer le nom de la procédure stockée de la procédure".

Qu'est-ce que la procédure stockée Oracle

L'environnement d'exploitation de ce tutoriel : système Windows 7, Oracle version 11.2.0.1.0, ordinateur DELL G3.

Les procédures stockées Oracle comprennent trois parties : la déclaration de processus, la partie de processus d'exécution et les exceptions de procédure stockée (peuvent être écrites ou non. Pour améliorer la tolérance aux pannes du script et la commodité du débogage, écrivez la gestion des exceptions)

L'utilisation des procédures stockées sert principalement à compléter une fonction complexe. Si vous utilisez directement des instructions SQL, vous devez les compiler à chaque fois. Cependant, les procédures stockées ne doivent être compilées qu'une seule fois et peuvent être appelées directement plus tard. Sa syntaxe est

create or replace procedure procedure_name
as
begin
   extention;
end;
/

Ligne 1 :

CREATE OR REPLACE PROCEDURE est une instruction SQL qui demande à la base de données Oracle de créer une procédure stockée appelée squelette et de l'écraser si elle existe ;

Ligne 2 :

Le mot-clé IS indique qu'un corps PL/SQL suivra.

Ligne 3 :

Le mot-clé BEGIN indique le début du corps PL/SQL.

Ligne 4 :

L'instruction NULL PL/SQL indique que rien ne doit être fait. Cette phrase ne peut pas être supprimée car il doit y avoir au moins une phrase dans le corps PL/SQL

Ligne 5 :

Le mot-clé END indique la fin du corps PL/SQL

Syntaxe de création de procédure stockée :

 create or replace procedure 存储过程名(param1 in type,param2 out type) 
as 
变量1 类型(值范围); --vs_msg   VARCHAR2(4000); 
变量2 类型(值范围);
Begin
Select count(*) into 变量1 from 表A where列名=param1;
 
    If (判断条件) then
       Select 列名 into 变量2 from 表A where列名=param1;
       Dbms_output。Put_line(‘打印信息’);
    Elsif (判断条件) then
       Dbms_output。Put_line(‘打印信息’);
    Else
       Raise 异常名(NO_DATA_FOUND);
    End if;
Exception
    When others then
       Rollback;
End;

Notes :


1 , Les paramètres de la procédure stockée n'ont pas de plage de valeurs, in signifie entrant et out signifie sortie Le type

peut utiliser n'importe quel type légal dans Oracle.

2, La variable a une plage de valeurs, suivie d'un point-virgule

3 Avant de juger l'instruction, il est préférable d'utiliser la fonction count (*) pour déterminer si l'enregistrement de l'opération existe.

4, utilisez select. . . dans. . . Attribuez une valeur à la variable

5. Pour lever une exception dans le code, utilisez raise + nom de l'exception

Recommandé (gratuit) : oracle

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