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

Bases de données Delphi Discussion :

Executer procédure stockée base oracle ADOStoredProc


Sujet :

Bases de données Delphi

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Executer procédure stockée base oracle ADOStoredProc
    Salut,
    Je voudrais récupérer sous delphi le résultat de l'éxécution de la procédure suivante :

    create or replace procedure proc_etat_couverture (nb_ok out integer, nb_soucis out integer, nb_pb out integer) is

    cursor cur_ok is
    select count(*) from patient where etat_couverture='OK';

    cursor cur_soucis is
    select count(*) from patient where etat_couverture='Soucis';

    cursor cur_pb is
    select count(*) from patient where etat_couverture='Pb';
    begin
    nb_ok:=0;
    nb_soucis:=0;
    nb_pb:=0;

    open cur_ok;
    fetch cur_ok into nb_ok;
    close cur_ok;
    open cur_soucis;
    fetch cur_soucis into nb_soucis;
    close cur_soucis;
    open cur_pb;
    fetch cur_pb into nb_pb;
    close cur_pb;
    end;

    J'utilise dans delphi ADOStoredProc mais lorsque je veux l'activer j'ai ce message d'erreur:
    ADOStoreProc1 : CommandText ne renvoie pas un ensemble de résultats

  2. #2
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Personne n'a une petite idée pour que je puisse avancee? Ca serait chouette.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Et bien j ai enfin trouve une solution. En fait je cree une table temporaire.
    Et ma procedure stockee est la suivante :

    create or replace procedure proc_etat_couverture is
    cursor cur_ok is
    select count(*) from patient where etat_couverture='OK';
    cursor cur_soucis is
    select count(*) from patient where etat_couverture='Soucis';
    cursor cur_pb is
    select count(*) from patient where etat_couverture='Pb';
    nb_ok INTEGER;
    nb_soucis INTEGER;
    nb_pb INTEGER;
    begin
    open cur_ok;
    fetch cur_ok into nb_ok;
    open cur_soucis;
    fetch cur_soucis into nb_soucis;
    open cur_pb;
    fetch cur_pb into nb_pb;
    EXECUTE IMMEDIATE 'UPDATE temp SET nb_ok='||nb_ok||' WHERE (code=1)';
    EXECUTE IMMEDIATE 'UPDATE temp SET nb_soucis='||nb_soucis||' WHERE (code=1)';
    EXECUTE IMMEDIATE 'UPDATE temp SET nb_pb='||nb_pb||' WHERE (code=1)';
    close cur_pb;
    close cur_soucis;
    close cur_ok;
    end;

    Maintenant il me reste plus qu'a faire appel a ma table temporaire ds delphi. Je veux mettre les infos de mes variables dans un DBChart.
    Si quelqu'un a deja utilisé un DBchart j'aimerais bien un coup de pouce.
    Merci ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. procédure stocké d'oracle
    Par saadoz dans le forum BIRT
    Réponses: 2
    Dernier message: 13/11/2009, 18h07
  2. Réponses: 0
    Dernier message: 17/09/2008, 09h53
  3. Creer un procédure Stocké sous oracle
    Par ouadie99 dans le forum C#
    Réponses: 2
    Dernier message: 27/05/2008, 18h35
  4. Execution procédure stockée dont le nom est en varchar
    Par castaka dans le forum Développement
    Réponses: 2
    Dernier message: 20/05/2008, 14h37
  5. Execution procédure stockée avec un curseur
    Par simo333 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 07/10/2007, 11h00

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