Maison > Article > base de données > Parlons de l'utilisation des paramètres de sortie dans les procédures stockées Oracle
Les procédures stockées Oracle sont des segments de code précompilés dont le but est de mettre en œuvre certaines logiques métier ou opérations de traitement de la base de données. Dans les procédures stockées Oracle, des paramètres sont souvent nécessaires pour les entrées et les sorties, et l'utilisation de paramètres de sortie est assez courante. Cet article présentera en détail l'utilisation des paramètres de sortie dans les procédures stockées Oracle.
Les paramètres de sortie dans les procédures stockées Oracle font référence au renvoi de certaines données à l'appelant une fois l'exécution de la procédure stockée terminée. En termes simples, les paramètres de sortie sont les résultats de calcul ou les valeurs d'état de la procédure stockée. Ces résultats peuvent être des nombres, des chaînes, des dates et d'autres types de données.
Dans les procédures stockées Oracle, la déclaration et l'utilisation des paramètres de sortie sont relativement simples. Dans une procédure stockée, vous pouvez utiliser le mot clé OUT pour déclarer les paramètres de sortie. Voici un exemple simple de procédure stockée dans laquelle deux paramètres de sortie sont déclarés : out_num et out_str.
CREATE OR REPLACE PROCEDURE my_procedure (in_param1 IN NUMBER, in_param2 IN VARCHAR2, out_num OUT NUMBER, out_str OUT VARCHAR2) IS BEGIN /* 在存储过程中进行计算 */ out_num := in_param1 * 10; out_str := in_param2 || ' World!'; END; /
Dans l'exemple ci-dessus, la procédure stockée accepte deux paramètres d'entrée : in_param1 et in_param2, et attribue les résultats d'exécution à deux paramètres de sortie : out_num et out_str. Lorsque la procédure stockée est appelée, les paramètres réels seront transmis à la procédure stockée via les mots-clés IN et OUT.
Le code pour appeler l'exemple de procédure stockée ci-dessus est le suivant :
DECLARE result_num NUMBER; result_str VARCHAR2(50); BEGIN /* 调用存储过程 */ my_procedure(5, 'Hello', result_num, result_str); /* 输出结果 */ DBMS_OUTPUT.PUT_LINE('result_num = ' || result_num); DBMS_OUTPUT.PUT_LINE('result_str = ' || result_str); END; /
Comme vous pouvez le voir, les paramètres réels 5 et 'Bonjour' sont transmis à la procédure stockée, et les résultats du calcul seront renvoyés à result_num et result_str paramètres de sortie, et les résultats seront affichés via DBMS_OUTPUT. L'exécution du code ci-dessus obtiendra les résultats suivants :
result_num = 50 result_str = Hello World!
Dans les versions antérieures à Oracle 12c, le mot-clé OUT ne peut pas être utilisé pour déclarer les paramètres de sortie et le mot-clé OUTPUT doit être utilisé. Voici un exemple de procédure stockée qui utilise le mot-clé OUTPUT pour déclarer les paramètres de sortie :
CREATE OR REPLACE PROCEDURE my_procedure (in_param1 IN NUMBER, in_param2 IN VARCHAR2, result_num OUT NUMBER, result_str OUT VARCHAR2) IS BEGIN /* 在存储过程中进行计算 */ result_num := in_param1 * 10; result_str := in_param2 || ' World!'; END; /
Le code ci-dessus déclare deux paramètres de sortie : result_num et result_str. Une fois la procédure stockée exécutée, les résultats du calcul seront attribués à ces deux paramètres de sortie et renvoyés à l'appelant.
Le code pour appeler un exemple de procédure stockée avec le mot-clé OUTPUT est le suivant :
DECLARE v_num NUMBER; v_str VARCHAR2(50); BEGIN /* 调用存储过程 */ my_procedure(5, 'Hello', v_num, v_str); /* 输出结果 */ DBMS_OUTPUT.PUT_LINE('v_num = ' || v_num); DBMS_OUTPUT.PUT_LINE('v_str = ' || v_str); END; /
Dans les procédures stockées Oracle, les paramètres de sortie sont un outil puissant qui peut renvoyer les résultats de calcul et les valeurs d'état à l'appelant. Déclarer et utiliser les paramètres de sortie est très simple, il suffit d'utiliser le mot-clé OUT ou OUTPUT directement dans la procédure stockée. Dans le développement réel, les paramètres de sortie peuvent souvent être utilisés pour traiter les données et simplifier le code.
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!