Pas de problème (pb), que du PowerBuilder (PB) ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 20-02-2009 09:34:17

dark ryus  
Membre completement Geek
Lieu: Nancy
Date d'inscription: 30-09-2008
Messages: 129
Pépites: 700
Banque: 0
Site web

Nombre de résultats d'un cursor

Bonjour,

j'ai un jolie curseur avec une requête SQL, et j'aurais voulu connaitre le nombre de résultats de mon curseur avant de le parcourir.

Ex:

Code: pb

DECLARE curseur CURSOR FOR
select toto from nimp
USING SQLCA;  

OPEN curseur _ecrcpt;

FETCH curseur  INTO :ls_toto;

      do while SQLCA.SQLCode = 0  
           // Traitement
      FETCHcurseur  INTO :ls_toto;
      loop

CLOSE curseur ;


Donc j'aimerai savoir le nombre de résultat avant de faire mon do while.

Merci

Hors ligne

 

#2 20-02-2009 09:42:38

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2493
Pépites: 106
Banque: 9,223,372,036,854,775,808

Re: Nombre de résultats d'un cursor

Bonjour,

Dans l'aide pb, j'ai trouvé ceci:

Aide Pb a écrit:

To make sure the fetch affected at least one row, check the SQLNRows property of the transaction object.

Attention cependant: Cette information étant envoyée par la base de donnée elle-même, il peut parfois y avoir des surprises
car cette information n'aura pas forcément la même signification d'un SGBD à l'autre. A tester donc.


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#3 20-02-2009 09:56:59

dark ryus  
Membre completement Geek
Lieu: Nancy
Date d'inscription: 30-09-2008
Messages: 129
Pépites: 700
Banque: 0
Site web

Re: Nombre de résultats d'un cursor

J'ai déjà essayé de mettre des uf_message('test1',SQLCA.SQLNRows) un peu partout mais ça fait pas grand chose, c'est pour ça que je bloque un peu....

Hors ligne

 

#4 20-02-2009 10:11:15

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 748
Pépites: 1,028,846
Banque: 171,170,849,654

Re: Nombre de résultats d'un cursor

Bonjour,

Tu passes une requête préalable au curseur :

Code: PB

long ll_count
SELECT Count(*) INTO :ll_count FROM nimp USING SQLCA;

Hors ligne

 

#5 20-02-2009 10:13:10

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2493
Pépites: 106
Banque: 9,223,372,036,854,775,808

Re: Nombre de résultats d'un cursor

Tu es sur quel SGBD et quelle version de PB? Pour le message, je te conseille de convertir ton SQLCA.SQLNRows en string au préalable, voir de vérifier au débuggeur s'il est à NULL


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#6 20-02-2009 10:15:57

dark ryus  
Membre completement Geek
Lieu: Nancy
Date d'inscription: 30-09-2008
Messages: 129
Pépites: 700
Banque: 0
Site web

Re: Nombre de résultats d'un cursor

buck a écrit:

Bonjour,

Tu passes une requête préalable au curseur :

Code: PB

long ll_count
SELECT Count(*) INTO :ll_count FROM nimp USING SQLCA;

Je peux pas faire 2 fois ma requête car elle est vraiment longue.....

Ma version de PB est la 9 et je suis sur Oracle 9i.

SQLCA.SQLNRows me retourne 0 avant mon premier fetch et 1 après mon premier fetch, donc ce n'est pas le nombre total de résultats..... car j'en ai beaucoup normalement....

Hors ligne

 

#7 20-02-2009 10:22:40

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5122
Pépites: 97,200
Banque: 2,147,483,647

Re: Nombre de résultats d'un cursor

pourquoi ne pas utiliser un DW à la place du curseur ?


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#8 20-02-2009 10:26:29

dark ryus  
Membre completement Geek
Lieu: Nancy
Date d'inscription: 30-09-2008
Messages: 129
Pépites: 700
Banque: 0
Site web

Re: Nombre de résultats d'un cursor

Je crois que je vais faire ça, ça sera plus simple. Je vais utiliser une datastore....

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22