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






Bonjour à tous,
Dans mon code power script, je voulais récupérer le nombre des lignes d’une requête SQL.
Mais le problème c’est que la syntaxe de la requête est dans une variable : ls_ma_requete.
Est qu’il existe une fonction directe en Pb qui permet de récupérer la requête pour que je puisse faire une curseur ou count(*).
Merci
Dernière modification par mattdamon (11-08-2008 17:48:41)
Hors ligne







Salut,
Tu peut essayer SQLCA.SQLNRows.
/!\
SQLNRows Long The number of rows affected (the database vendor supplies this number, so the meaning may not be the same in every DBMS).
Hors ligne






Nephtis a écrit:
Salut,
Tu peut essayer SQLCA.SQLNRows.
/!\
SQLNRows Long The number of rows affected (the database vendor supplies this number, so the meaning may not be the same in every DBMS).
Mais comment je pourrais l'utiliser ?
Hors ligne




mattdamon a écrit:
Nephtis a écrit:
Salut,
Tu peut essayer SQLCA.SQLNRows.
/!\
SQLNRows Long The number of rows affected (the database vendor supplies this number, so the meaning may not be the same in every DBMS).Mais comment je pourrais l'utiliser ?
Ben, je pense que tu cherchais une methode pour recuperer le nombre de lignes renvoyees par une requete, cf:
mattdamon a écrit:
Dans mon code power script, je voulais récupérer le nombre des lignes d’une requête SQL.
...donc, Nephtis te propose le SQLCA.SQLNRows...
Maintenant, je me demande si j'ai bien compris, parce que d'apres moi, le SQLNRows n'est pertinent que pour un insert/update/delete (je peux me tromper). Or ici, on dirait que tu veux faire un select... Mais alors pourquoi ne pas faire un curseur? Ce qui du coup te donnerait le nombre de lignes... A moins que tu utilise une DW pour faire ton retrieve...
Bref, je suis pas sur de comprendre ce que tu veux. Peux-tu reexpliquer stp?
Peut-etre un pti bout de ton code aussi (l'appel de ta requete p.ex. et/ou ta requete)...
Hors ligne






Cortex a écrit:
mattdamon a écrit:
Nephtis a écrit:
Salut,
Tu peut essayer SQLCA.SQLNRows.
/!\
SQLNRows Long The number of rows affected (the database vendor supplies this number, so the meaning may not be the same in every DBMS).Mais comment je pourrais l'utiliser ?
Ben, je pense que tu cherchais une methode pour recuperer le nombre de lignes renvoyees par une requete, cf:
mattdamon a écrit:
Dans mon code power script, je voulais récupérer le nombre des lignes d’une requête SQL.
...donc, Nephtis te propose le SQLCA.SQLNRows...
Maintenant, je me demande si j'ai bien compris, parce que d'apres moi, le SQLNRows n'est pertinent que pour un insert/update/delete (je peux me tromper). Or ici, on dirait que tu veux faire un select... Mais alors pourquoi ne pas faire un curseur? Ce qui du coup te donnerait le nombre de lignes... A moins que tu utilise une DW pour faire ton retrieve...
Bref, je suis pas sur de comprendre ce que tu veux. Peux-tu reexpliquer stp?
Peut-etre un pti bout de ton code aussi (l'appel de ta requete p.ex. et/ou ta requete)...
Merci Cortex pour ta bonne réponse , mais ca ce que j'ai pensé avant et mon problème a été résolu.
pour la résolution j'ai utilisé un curseur et voisi le code :
DECLARE cursor_nbrerow DYNAMIC CURSOR for SQLSA ; PREPARE SQLSA FROM :ls_ma_requete ; OPEN DYNAMIC cursor_nbrerow; FETCH cursor_nbrerow INTO :li_nbre_row; CLOSE cursor_nbrerow ;
@+
Hors ligne




DECLARE cursor_nbrerow DYNAMIC CURSOR for SQLSA ; PREPARE SQLSA FROM :ls_ma_requete ; OPEN DYNAMIC cursor_nbrerow; FETCH cursor_nbrerow INTO :li_nbre_row; CLOSE cursor_nbrerow ;
Hum... Autant pour moi...
Et n'oublies pas le [RESOLU] alors.
Hors ligne