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 13/09/2011, 09h55   #1
Membre régulier
 
Avatar de Vonziz
 
Inscription : décembre 2006
Messages : 203
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 203
Points : 91
Points : 91
Par défaut Utilisation curseur fonction DB2

Bonjour,

Je souhaiterais utiliser un curseur dans une fonction DB2 mais je n'arrive pas à compiler, même sur un exemple très simple. La compilation plante soit sur le "FOR", soit sur le "PREPARE".

Auriez-vous une idée d'où pourrait venir le problème ?

Erreur de compilation :

DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0104N An unexpected token "FOR" was found following "CLARE CCB_CUR
CURSOR". Expected tokens may include: ".". LINE NUMBER=12. SQLSTATE=42601

Code de la fonction :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
@
SET SCHEMA #schema#
@
@
CREATE FUNCTION getAssietteXXXCursor(
pXX INT,
pXXX VARCHAR(15),
pXXXX INT,
pXXXXX INT
)
RETURNS DOUBLE
BEGIN ATOMIC
 
DECLARE SQL_QUERY VARCHAR(800);
DECLARE SQL_STATEMENT STATEMENT;
DECLARE CCB_CUR CURSOR FOR SQL_STATEMENT;
 
SET SQL_QUERY = 'select max(COLUMNXXX) from d00.TABLEXXX WHERE XX=305998 AND XXX=5900';
 
PREPARE SQL_STATEMENT FROM SQL_QUERY;
 
OPEN CCB_CUR;
CLOSE CCB_CUR;
 
RETURN 0;
 
END
@
@
Vonziz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h11.


 
 
 
 
Partenaires

Hébergement Web