Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/02/2006, 15h31   #1
Membre habitué
 
Inscription : juin 2004
Messages : 212
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 212
Points : 118
Points : 118
Par défaut [SQL]Comment récupérer première/dernière valeurs du curseur?

Salut,

La question est totalement exprimée dans le sujet c'est à dire :

Comment je pourrais faire pour récupérer la première et le dernière valeur d'un curseur.

En fait j'utilise toutes les données qui sont dans mon curseur mais j'ai besoin de stocker dans une variable la première et la dernière valeur y'a pas une fonction qui le fait ou autre chose?


Merci d'avance
yoyopi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/03/2006, 07h50   #2
Invité de passage
 
Inscription : mars 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 4
Points : 4
Points : 4
Si vous utilisez la commande FETCH, vous pouvez écrire :
Code :
1
2
FETCH FIRST FROM nom_cursor
FETCH LAST FROM nom_cursor
marc-andre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 08h59   #3
Membre habitué
 
Inscription : juin 2004
Messages : 212
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 212
Points : 118
Points : 118
Merci pour cette réponse marc mais le problème est que je travaille sous DB2/AS400 et l'instruction fetch first me plante la compilation de ma procédure SQL.

Donc si tu avais une autre solution merci d'avance
yoyopi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 09h33   #4
Invité de passage
 
Inscription : mars 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 4
Points : 4
Points : 4
De rien,

est-ce que ta procédure SQL est incluse dans du RPG ou autre.
Pourrais-tu me donner un exemple pour mieux comprendre ?
Pour info, je travaille aussi sur AS/400 en RPG et avec SQL
marc-andre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 09h42   #5
Membre habitué
 
Inscription : juin 2004
Messages : 212
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 212
Points : 118
Points : 118
ma procedure sql est indépendante c'est a dire que je l'appele à partir d'une autre porcedure sql.
Prenons une code bateau :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 CREATE procedure test LANGUAGE sql
begin
declare var integer DEFAULT 0;
declare c_num cursor FOR SELECT id FROM tabletest;
.....déclaration des VARIABLES permettant de vérifer l'état du curseur.......
open c_num;
ins_loop:
loop
fetch c_num into var;
....traitement......
end loop ins_loop; close c_num
end
En gros mon code ressemble à ça et je voudrais faire un FETCH FIRST mais j'ai essayé de le mettre à n'importe quel endroit mais ça ne change rien il ne veut pas compiler.
yoyopi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 10h44   #6
Invité de passage
 
Inscription : mars 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 4
Points : 4
Points : 4
Je viens d'essayer ce code chez nous,
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
CREATE procedure test LANGUAGE sql 
begin 
declare var_first character (25); 
declare var_last character (25);
declare c_num scroll cursor FOR SELECT sccdsc FROM visc; 
open c_num; 
 
fetch first FROM c_num INTO var_first; 
fetch last FROM c_num INTO var_last;
INSERT INTO visc2 VALUES(var_first , var_last);
close c_num;
end;
en résultat j'ai bien la première et la dernière valeur dans le fichier VISC2.

pourrais-tu me dire ce que tu reçois comme message d'erreur à la compile.
marc-andre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 10h56   #7
Membre habitué
 
Inscription : juin 2004
Messages : 212
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 212
Points : 118
Points : 118
je viens d'essayer ton code et miracle ça fonctionne!! je pense que mon code ne fonctionnais pas car mon curseur n'était pas scrollable non? en tout cas merci pour ton code
yoyopi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 12h19   #8
Invité de passage
 
Inscription : mars 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 4
Points : 4
Points : 4
avec joie et plaisir

bonne continuation
marc-andre est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h15.


 
 
 
 
Partenaires

Hébergement Web