Maison base de données Oracle Comment écrire des procédures stockées dans Oracle

Comment écrire des procédures stockées dans Oracle

Apr 18, 2023 am 09:07 AM

Avec l'augmentation des besoins des entreprises et la complexité des systèmes, les procédures de stockage de bases de données reçoivent de plus en plus d'attention. En tant que base de données relationnelle à grande échelle, les procédures stockées d'Oracle jouent un rôle de plus en plus important lors du traitement d'énormes quantités de données. Alors, comment écrire des procédures stockées dans Oracle ?

1. Qu'est-ce qu'une procédure stockée ?

Une procédure stockée est un ensemble d'instructions SQL stockées et exécutées dans la base de données. Certaines tâches spécifiques peuvent être effectuées en exécutant la procédure stockée. Cela présente les avantages suivants :

  1. Améliore l'efficacité d'exécution de la base de données.
  2. Simplifie l'écriture des instructions SQL et réduit la difficulté de développement.
  3. La sécurité des bases de données a été améliorée.
  4. Peut garantir efficacement la cohérence des données.

2. Le format de syntaxe des procédures stockées

Dans Oracle, l'écriture de procédures stockées doit suivre un certain format de syntaxe. La syntaxe de base est la suivante :

CREATE OR REPLACE PROCEDURE nom de la procédure stockée
(paramètre 1, paramètre 2,..., paramètre n)
IS

变量1 数据类型;
变量2 数据类型;
……
Copier après la connexion

BEGIN

存储过程体;
EXCEPTION
异常处理语句;
Copier après la connexion

END nom de la procédure stockée ;

liste des paramètres et La partie déclaration de variable peut être omise, le corps de la procédure stockée et les parties de l'instruction de gestion des exceptions sont obligatoires.

3. Exemple de procédure stockée

Jetons maintenant un coup d'œil à une procédure stockée simple, qui est utilisée pour interroger les informations spécifiées sur les employés en fonction des paramètres entrants.

CRÉER OU REMPLACER LA PROCÉDURE find_employee
(
p_employee_id IN NUMBER,
p_emp_name IN VARCHAR2,
p_emp_salary OUT NUMBER,
p_emp_dept_id OUT NUM BER
)
IS
BEGIN

SELECT salary, dept_id
INTO p_emp_salary, p_emp_dept_id
FROM employee
WHERE employee_id = p_employee_id AND employee_name = p_emp_name;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('查询出错' || SQLERRM);
Copier après la connexion

END find_employee;

Dans cette procédure stockée, nous définissons Il existe 4 paramètres : p_employee_id et p_emp_name sont utilisés pour interroger les informations sur l'employé, p_emp_salary et p_emp_dept_id sont utilisés pour renvoyer le salaire et l'ID de service de l'employé. Si une exception se produit pendant la requête, nous utilisons DBMS_OUTPUT pour générer des informations sur l'exception.

4. Appel de procédures stockées

Nous pouvons appeler des procédures stockées des deux manières suivantes :

  1. Appel anonyme de procédures stockées

Dans SQL Developer, sélectionnez "SQL Worksheet" et entrez le code suivant :

DECLARE
emp_salary NUMBER;
emp_dept_id NUMBER;
BEGIN
find_employee(100,'Tom',emp_salary,emp_dept_id);
DBMS_OUTPUT.PUT_LINE('salary = ' || emp_salary || ', dept_id = ' | | emp_dept_id);
END ;

  1. Appel de procédures stockées via des applications

Dans les programmes Java, nous pouvons utiliser JDBC pour nous connecter à la base de données Oracle, puis appeler des procédures stockées. L'exemple de code est le suivant :

CallableStatement stmt = conn.prepareCall("{call find_employee(?,?,?,?)}");
stmt.setInt(1, 100);
stmt.setString(2, "Tom" );
stmt.registerOutParameter(3, java.sql.Types.NUMERIC);
stmt.registerOutParameter(4, java.sql.Types.NUMERIC);
stmt.execute();
int emp_salary = stmt. getInt(3 );
int emp_dept_id = stmt.getInt(4);
System.out.println("salary = " + emp_salary + ", dept_id = " + emp_dept_id);

Grâce au code ci-dessus, nous pouvons facilement appeler la procédure stockée, obtient les résultats de la requête et affiche les informations sur les résultats.

Résumé : Les procédures stockées constituent une partie très importante de la base de données Oracle. Elles peuvent améliorer l'efficacité du traitement des données et garantir la cohérence et la sécurité des données, apportant ainsi une grande commodité au traitement des données d'entreprise. Grâce à cet article, nous pouvons clairement comprendre la syntaxe de base des procédures stockées Oracle, et également maîtriser les exemples et les méthodes d'appel des procédures stockées.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment créer des utilisateurs et des rôles dans Oracle? Comment créer des utilisateurs et des rôles dans Oracle? Mar 17, 2025 pm 06:41 PM

L'article explique comment créer des utilisateurs et des rôles dans Oracle à l'aide de commandes SQL, et discute des meilleures pratiques pour gérer les autorisations des utilisateurs, y compris l'utilisation des rôles, en suivant le principe des moindres privilèges et des audits réguliers.

Comment utiliser Oracle Data Masking and Unsetting pour protéger les données sensibles? Comment utiliser Oracle Data Masking and Unsetting pour protéger les données sensibles? Mar 13, 2025 pm 01:19 PM

Cet article détaille le masquage et le sous-ensemble des données Oracle (DMS), une solution pour protéger les données sensibles. Il couvre l'identification des données sensibles, la définition des règles de masquage (mélange, substitution, randomisation), mise en place de travaux, surveillance et déploiement

Comment utiliser les curseurs dans PL / SQL pour traiter plusieurs lignes de données? Comment utiliser les curseurs dans PL / SQL pour traiter plusieurs lignes de données? Mar 13, 2025 pm 01:16 PM

Cet article explique les curseurs PL / SQL pour le traitement des données Row-by Row. Il détaille la déclaration, l'ouverture, la récupération et la fermeture du curseur, comparant les curses implicites, explicites et ref. Techniques pour une manipulation efficace des ensembles de données importants et une utilisation pour des boucles

Comment effectuer des sauvegardes en ligne dans Oracle avec un minimum de temps d'arrêt? Comment effectuer des sauvegardes en ligne dans Oracle avec un minimum de temps d'arrêt? Mar 17, 2025 pm 06:39 PM

L'article traite des méthodes pour effectuer des sauvegardes en ligne dans Oracle avec un minimum de temps d'arrêt en utilisant RMAN, les meilleures pratiques pour réduire les temps d'arrêt, assurer la cohérence des données et surveiller les progrès de la sauvegarde.

Comment configurer le chiffrement dans Oracle à l'aide du chiffrement transparent des données (TDE)? Comment configurer le chiffrement dans Oracle à l'aide du chiffrement transparent des données (TDE)? Mar 17, 2025 pm 06:43 PM

L'article décrit les étapes pour configurer le chiffrement transparent des données (TDE) dans Oracle, détaillant la création du portefeuille, permettant le TDE et le chiffrement des données à différents niveaux. Il discute également des avantages de TDE comme la protection et la conformité des données, et comment Veri

Comment utiliser le référentiel de charge de travail automatique (AWR) et le moniteur de diagnostic de base de données automatique (ADDM) dans Oracle? Comment utiliser le référentiel de charge de travail automatique (AWR) et le moniteur de diagnostic de base de données automatique (ADDM) dans Oracle? Mar 17, 2025 pm 06:44 PM

L'article explique comment utiliser AWR et ADDM d'Oracle pour l'optimisation des performances de la base de données. Il détaille la génération et l'analyse des rapports AWR, et l'utilisation d'ADDM pour identifier et résoudre les goulots d'étranglement des performances.

Comment utiliser la technologie Flashback pour se remettre de la corruption logique des données? Comment utiliser la technologie Flashback pour se remettre de la corruption logique des données? Mar 14, 2025 pm 05:43 PM

L'article discute de l'utilisation de la technologie Flashback d'Oracle pour se remettre de la corruption logique des données, des étapes de détail de la mise en œuvre et de la garantie de l'intégrité des données après la récupération.

Comment implémenter des politiques de sécurité dans Oracle Database à l'aide de la base de données privée virtuelle (VPD)? Comment implémenter des politiques de sécurité dans Oracle Database à l'aide de la base de données privée virtuelle (VPD)? Mar 13, 2025 pm 01:18 PM

Cet article détaille la mise en œuvre des politiques de sécurité des bases de données Oracle à l'aide de bases de données privées virtuelles (VPD). Il explique la création et la gestion des politiques VPD via des fonctions qui filtrent les données basées sur le contexte de l'utilisateur, mettant en évidence les meilleures pratiques comme le moins P

See all articles