• Contact
  • Annonceurs

AURELIENPI.AT

Anything but the web !

  • Toutes les Archives
  • Blog
    • Wiki Technique
    • RDW
    • Panoramiques
    • Musique
  • Photos
  • Voyages

Creer une fonction retournant un curseur dans un package PL/SQL (Oracle)

0
  • by Aurélien PIAT
  • in Wiki Technique
  • — 25 Mar, 2011

Dans la déclaration des méthodes du package déclarer la méthode et sont type de curseur retourné :

TYPE curseur_test IS REF CURSOR;
/* DETAILS FONCTION */
FUNCTION FONCTION_TEST   ( PARAM$UN IN NUMBER, PARAM$DEBUG IN NUMBER )
               RETURN curseur_test;

Dans la définition du corps du package ajoutez alors :

FUNCTION FONCTION_TEST   ( PARAM$UN IN NUMBER, PARAM$DEBUG IN NUMBER )
               RETURN curseur_test
IS
    var_cur_test   curseur_test;
BEGIN

Open var_cur_test  FOR
            SELECT 'x'
            FROM DUAL;

RETURN var_cur_test;

END FONCTION_TEST;
/

Puis si vous l’utilisée dans une procédure annexe (ou bien même au sein de ce package comme dans notre exemple) procédez de cette façon :

PROCEDURE PROCEDURE_TEST   ( PARAM$UN IN NUMBER, PARAM$DEBUG IN NUMBER )
IS
    --Définition du curseur tampon
    TYPE TYP_REF_CUR IS REF CURSOR ;
    cur_test_travail TYP_REF_CUR ;

    lc$debug NUMBER :=0;
    lc$tampon NUMBER :=0;

BEGIN

    Cur_test_travail := PKG_NOM.FONCTION_TEST( 0 , lc$debug );

    -- Lecture d'une ligne
    Loop
    Fetch Cur_test_travail 

	  --Ajout de la valeur dans notre tampon
          Into lc$tampon;    

	  -- sortie lorsque le curseur ne ramène plus de ligne
          Exit When Cur_test_travail%NOTFOUND ; 

		/* TRAITEMENT */

    End loop ;
    close Cur_test_travail;

END PROCEDURE_TEST;
/
Share

Tags: curseurfonctionoraclepl/sqlprocedure

You may also like...

  • Envoi De Fichier Via Procedure Oracle sur FTP (Package / Fonction / Procedure / FTP / Oracle) 8 Juin, 2011
  • Augmenter la taille d’un disque dur d’une VM sous VirtualBox (VDI) 4 Mar, 2014
  • Remplacer les caracteres accentues dans une chaine de carractere (PL/SQL / Oracle / Fonction) 8 Nov, 2011
  • Serveur FTP Local (FTP) 8 Juin, 2011

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

  • Previous story Creer un package en PL/SQL (Oracle)
  • Next story Traiter simplement un fichier XML avec SimpleXML en PHP
  • Onglets

    • Recent Posts
    • Most Popular
    • Comments
    • Tags
    • L’Écosse en une semaine6 mars 2020
    • Belkin Wemo Switch : allumer, éteindre et statut de tous vos switchs !20 mars 2016
    • Réparer VM Oracle VirtualBox Avorté11 décembre 2014
    • NAS Thecus N25607 octobre 2014
    • Afficher la couverture du livre en cours de lecture sur le Kobo By Fnac18 mai 2012
    • Comment installer des presets (paramètres prédéfinis) sur Adobe Lightroom 4 sur Mac20 juillet 2013
    • Sauvez votre lapin ! (Nabaztag)2 août 2011
    • Test du Videoprojecteur BenQ W700+22 février 2013
    • Fanny's Party 40 - Noël à la pelle - CatnGeek on:Sauvez votre lapin ! (Nabaztag)
    • maxime arnaudet on:Comment installer des presets (paramètres prédéfinis) sur Adobe Lightroom 4 sur Mac
    • Kb on:Afficher la couverture du livre en cours de lecture sur le Kobo By Fnac
    • Muriel on:Afficher la couverture du livre en cours de lecture sur le Kobo By Fnac
    • alternative app apple application astuce bretagne coding eclipse film flore fonction ftp Google gopro guadeloupe ios iphone kobo le sud liseuse mac os x media mer nas nature nowatch oracle os x panoramique photo photographie php pl/sql plugin podcast procedure qnap server serveur ssh video wallpaper wordpress xml youtube
  • Home
  • Toutes les catégories
  • Wiki Technique
  • Creer une fonction retournant un curseur dans un package PL/SQL (Oracle)
  • Wiki Technique

    • Belkin Wemo Switch : allumer, éteindre et statut de tous vos switchs !20 mars 2016
    • Réparer VM Oracle VirtualBox Avorté11 décembre 2014
    • QNAP inclut le chiffrement intégral du NAS basé sur la technologie de chiffrement de volume2 octobre 2014
    • Augmenter un File System sous Linux6 juin 2014
    • Augmenter la taille d’un disque dur d’une VM sous VirtualBox (VDI)4 mars 2014
  • Blog

    • L’Écosse en une semaine6 mars 2020
    • NAS Thecus N25607 octobre 2014
    • QNAP inclut le chiffrement intégral du NAS basé sur la technologie de chiffrement de volume2 octobre 2014
    • HPC, la course à la puissance.4 juin 2014
    • YunoHost : Adieu Gmail, Drive, Dropbox, etc.19 mars 2014
  • Médias

    • Revue du web du 25/05/201325 mai 2013
    • Revue du web du 16/05/201316 mai 2013
    • Revue du web du 30/03/201330 mars 2013
    • Revue du web du 04/03/20134 mars 2013
    • freshnews #357 Samsung Galaxy Note III / Appels telephoniques sur Facebook Messenger / iPad detrone17 janvier 2013
  • A propos
  • Mentions legales
  • FAQ

Aurélien PIAT 2011~2020 - aurelienpi.at - Certains droits réservés : Creative Commons (France)