Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment créer un curseur de référence faible PL/SQL dans la base de données Oracle

Pourquoi le curseur de référence faible PL/SQL 

Dans le didacticiel précédent, nous avons appris à récupérer des données de différents types de données à partir de différentes colonnes à l'aide du curseur de référence fort. Les curseurs de référence forts ont une limitation en ce sens qu'ils ont un type de retour fixe qui ne peut être qu'un type de données d'enregistrement. Cependant, le type de retour fixe rend un curseur de référence fort moins sujet aux erreurs dans le développement de l'application. Mais cela nécessite définitivement une étape supplémentaire de création d'un type de données d'enregistrement défini par l'utilisateur.

Alors, n'avons-nous pas d'autre moyen de récupérer des données de différents types de données à l'aide du curseur de référence qui ne nécessite pas la création d'un type de données d'enregistrement défini par l'utilisateur ? Ne pouvons-nous pas créer un curseur de référence qui n'a pas de type de retour fixe ? Découvrons les réponses à ces questions dans ce blog.

Qu'est-ce qu'un curseur de référence faible PL/SQL dans la base de données Oracle ?

Un curseur de référence qui n'a pas de type de retour fixe est appelé un curseur de référence faible.

Pouvons-nous utiliser Weak Ref Cursor avec n'importe quelle instruction SELECT ou non ?

Oui nous pouvons. Parce que les curseurs de référence faibles n'ont pas de type de retour fixe comme les curseurs de référence forts, ils sont donc ouverts à tous les types d'instructions SELECT. Cela en fait également les curseurs de référence les plus fréquemment utilisés par rapport aux autres.

Je suppose que vous avez maintenant les réponses aux questions ci-dessus. PL/SQL Weak Ref Cursor est le moyen alternatif de récupérer des données de différents types de données. Comme le curseur de référence faible n'a pas de type de retour fixe, il n'est donc pas nécessaire de créer un type de données d'enregistrement séparé. Maintenant que nous avons dissipé tous nos doutes, il est temps de voir un exemple qui vous aidera à apprendre à créer des curseurs de référence faibles PL/SQL dans Oracle Database.

Syntaxe du curseur de référence faible

TYPE ref_cursor_name IS REF CURSOR;

Exemple :comment créer un curseur de référence faible dans la base de données Oracle

SET SERVEROUTPUT ON;
DECLARE
    /*Declare Weak Ref Cursor*/
    TYPE wk_RefCur IS REF CURSOR;
    /*Declare Cursor Variable of ref cursor type*/
    cur_var wk_RefCur;
    
     /*Declare two "Anchored Datatype Variable" for holding data from the cursor*/
    f_name  employees.first_name%TYPE;
    emp_sal employees.salary%TYPE;
BEGIN
    OPEN cur_var FOR SELECT first_name, Salary FROM employees WHERE employee_id = 100;
    FETCH cur_var INTO f_name, emp_sal;
    CLOSE cur_var;
    DBMS_OUTPUT.PUT_LINE (f_name ||' '||emp_sal);
END;
/

Allez-y et essayez d'exécuter ce programme pour voir ce que sera le résultat. Si vous le souhaitez, vous pouvez également télécharger ce script à partir du référentiel GIT. Voici les Liens [Script / Git Repository ]

Si vous apprenez mieux en regardant des vidéos, voici le didacticiel vidéo sur le curseur de référence faible PL/SQL.

C'est le tutoriel sur la façon de créer un curseur de référence faible PL/SQL dans Oracle Database. Assurez-vous donc de vous abonner à la chaîne YouTube. Dans le prochain didacticiel, nous apprendrons ce qu'est Sys Ref Cursor dans Oracle Database. Merci et bonne journée !