IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Résultat d'une fonction dans sqldev


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 60
    Points
    60
    Par défaut Résultat d'une fonction dans sqldev
    bonjour j' essaie d' executer une fonction stockee dans sqldev sans succès.
    La fonction a deux paramètres IN OUT et l'affichage DBMS de sqldev est allumé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    SET serveroutput on;
     
    declare
    r boolean
    r:= meine_fct(1212212,
                                        to_date('30.06.2022', 'dd.mm.yyyy'),
                                            'X',
                                            to_date('01.11.2018', 'dd.mm.yyyy'),
                                                 to_date('31.03.2023','dd.mm.yyyy'),
                                                 19,
                                                 'Y', 
                                               Outparam1,-- Parametre IN OUT 
                                                 Outparam2,-- Parametre IN OUT 
                                                 1,
                                                to_date('28.02.2023', 'dd.mm.yyyy'));
     
    dbms_output.enable;
      dbms_output.put_line(Outparam1);
      dbms_output.put_line(Outparam2);
     
    END;
    J'aimerai vérifier que la fonction calcule bien pour cela obtenir un résultat du calcul.
    Merci

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    "j' essaie d' executer une fonction stockee dans sqldev sans succès."
    Merci de nous donner plus d'infos : comment lances-tu ta fonction ? Qu'est-ce qui s'affiche : un message d'erreur ou rien ?
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  3. #3
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 60
    Points
    60
    Par défaut
    j'ai posté l'appel de la fonction. je n'ai pas de message d'erreur au contraire Sqldev me dit que la foncion a été executée avec succès.
    Je voudrais avoir les valeurs de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dbms_output.put_line(Outparam1);
      dbms_output.put_line(Outparam2);

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 137
    Points : 1 917
    Points
    1 917
    Par défaut
    Bonjour,

    Tu as bien afficher la sortie dbms output? Pour être sûr que ce n'est pas un problème d'affichage, ajoute DBMS_OUPUT.Put_line('Variables de sortie'); avant.
    Sinon peut-être que tes 2 variables de sorties sont NULL?

  5. #5
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 60
    Points
    60
    Par défaut
    la sortie dbms output est affichée et les lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dbms_output.put_line(Outparam1);
    dbms_output.put_line(Outparam2);
    ont été également ajoutées.

    est-ce que je dois initialiser les variables de sortie ?

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 137
    Points : 1 917
    Points
    1 917
    Par défaut
    Citation Envoyé par teddi Voir le message
    est ce que je dois initialisé les variables de sortie?
    Ces variables sont IN/OUT tu indiques, donc il faut voir ce que ta fonction en fait. Que fait-elle si ces variables sont passées NULL?

    PS : Une fonction avec des paramètres OUT ou IN OUT ce n'est pas conseillée.
    https://docs.oracle.com/en/database/...9-ACB038185638

  7. #7
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 60
    Points
    60
    Par défaut
    Excuse moi mais je n'ai pas bien compris à quel moment indiquer que les variables sont IN/OUT étant donné que je suis en pleine exécution de la fonction.
    Bien sûr lors de la définition de la fonction les variables IN/OUT sont indiquées.
    Seulement le souci que j'ai c'est comment tester une fonction avec des variables IN/OUT

    merci

  8. #8
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 137
    Points : 1 917
    Points
    1 917
    Par défaut
    Tu peux tester avec des variables IN OUT. Mais ce qu'il faut savoir c'est ce que fait ta fonction avec ces variables, il faut donc que tu ailles dans le code pour le savoir.

  9. #9
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 60
    Points
    60
    Par défaut
    Le code avec ces variables exécute une addition.
    ce qui m'embête, c'est qu'au moment de tester la fonction lorsque je leur assigne une valeur, j'ai une erreur de compilation.

Discussions similaires

  1. Afficher le résultat d'une fonction dans une JList
    Par daviddu54 dans le forum Composants
    Réponses: 10
    Dernier message: 01/10/2008, 14h53
  2. Afficher le résultat d'une fonction dans une comboBox
    Par poussin_44 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 10/07/2007, 15h06
  3. Réponses: 3
    Dernier message: 30/11/2006, 06h25
  4. Récupérer le résultat d'une fonction dans une balise html
    Par Hayato dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/06/2006, 17h04
  5. Réponses: 6
    Dernier message: 08/06/2006, 10h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo