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 11/12/2006, 12h24   #1
Futur Membre du Club
 
Inscription : juillet 2003
Messages : 110
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 110
Points : 19
Points : 19
Par défaut Comment résoudre l'Erreur SQL0802

Bonjour à tous!
J'ai écrit une requête SQL sous DB2 installé sur mon AS400. Elle ne s'exécute et me renvoie un message d'erreur.

Requête :
select count (*) as POLICES, "EPR.AGCE".CODE as AGENCE
from "EPR.POLI", "EPR.CLNT", "EPR.AGCE"
where ( ("EPR.POLI".CLNUM="EPR.CLNT".NUM) and ("EPR.AGCE".CODE="EPR.POLI".AGENCE)
and ("EPR.POLI".AGENCE="EPR.CLNT".AGENCE)
and ("EPR.POLI".brpr=10 and "EPR.POLI".ssbrpr=51) and "EPR.POLI".datresaa=0)
group by "EPR.AGCE".CODE


Message d'erreur :
[IBM][Pilote ODBC Client Access Express (32 bits) ][SQL DB2/400]SQL0802 - Erreur de conversion ou mappage des données.

Aidez moi à résoudre ce problème SVP. Que dois-je faire?

Merci à vous!
__________________
Clotilde
Clotilde est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 14h52   #2
jab
Rédacteur
 
Avatar de jab
 
Homme Jean-Alain Baeyens
SharePoint developpeur
Inscription : février 2004
Messages : 1 172
Détails du profil
Informations personnelles :
Nom : Homme Jean-Alain Baeyens
Âge : 48
Localisation : Belgique

Informations professionnelles :
Activité : SharePoint developpeur
Secteur : Service public

Informations forums :
Inscription : février 2004
Messages : 1 172
Points : 3 131
Points : 3 131
Envoyer un message via ICQ à jab Envoyer un message via MSN à jab Envoyer un message via Skype™ à jab
Peux-tu nous donner les types définis dans la DB pour les champs présent dans la requête ?
jab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 15h26   #3
Futur Membre du Club
 
Inscription : juillet 2003
Messages : 110
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 110
Points : 19
Points : 19
Par défaut Message d'erreur SQL

Tous les champs sont de type NUMERIC
__________________
Clotilde
Clotilde est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 18h36   #4
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Par défaut Syntaxe ?

Clotilde,
J'essaierais d'abord d'éclaircir la syntaxe de ma requête en utilisant les corrélations, a, b et c par exemple sur le nom des tables. Ensuite, je ferais des joints entre mes tables (est-ce que les " sont indispensables ?) et enfin enlèverais toutes ces parenthèses inutiles puisque toutes les conditions sont reliées par des ANDs. Ce qui nous donnerait :

Code :
1
2
3
4
5
6
7
8
9
SELECT count (*) AS POLICES, c.CODE AS AGENCE
 
FROM "EPR.POLI" a JOIN "EPR.CLNT" b ON a.CLNUM = b.NUM AND a.AGENCE = b.AGENCE
 
JOIN "EPR.AGCE" c ON c.CODE=a.AGENCE
 
WHERE a.brpr = 10 AND a.ssbrpr = 51 AND a.datresaa=0
 
GROUP BY c.CODE
Puis, je lancerais ma requête ainsi "purgée".
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 10h05   #5
Futur Membre du Club
 
Inscription : juillet 2003
Messages : 110
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 110
Points : 19
Points : 19
Merci Mercure, mais le message d'erreur persiste malgré tout
__________________
Clotilde
Clotilde est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 11h09   #6
Membre du Club
 
Inscription : novembre 2006
Messages : 64
Détails du profil
Informations personnelles :
Localisation : France, Territoire de Belfort (Franche Comté)

Informations forums :
Inscription : novembre 2006
Messages : 64
Points : 67
Points : 67
Par défaut Syntaxe SQL ou Erreur de donnée ?

Je pense que l'erreur peut aussi venir du contenu des zones que tu testes :

brpr , ssbrpr ou datresaa

Si une erreur de donnée décimale est intercepté par SQL au moment de la recherche, l'execution renvoie ce type de message.

Vérifie donc avec soin le contenu des zones de ta base

Fred
fred_crrm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 12h16   #7
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Par défaut Serveur

Et que se passe-t-il si tu exécutes la requête directement sous STRSQL sur le serveur AS/400 ? Obtiens-tu le même message ?

Si oui,
  • Place ton curseur sur la ligne où il y a le message et presse la touche <F1> (Aide). Tu auras alors un message de second niveau qui t'indiquera le type de l'erreur.
  • Presse ensuite la touche <F10> pour savoir quelles lignes et colonnes sont impliquées dans cette erreur.
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 17h56   #8
Futur Membre du Club
 
Inscription : juillet 2003
Messages : 110
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 110
Points : 19
Points : 19
N'ayant pas de query sur mon AS400, j'utilise AS Operations Navigator pour programmer en SQL
__________________
Clotilde
Clotilde est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 18h19   #9
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Par défaut SQL interactif

Je te parle du SQL interactif de l'AS/400 (STRSQL) et non pas du QUERY/400.
SQL est forcément installé sur ton serveur AS/400 puisque tes requêtes SQL passent par l'ODBC au travers du driver de Client Access et vont s'exécuter sur ce serveur...

Logue-toi sur un écran vert et fais STRSQL sur une ligne de commande quelconque. Ensuite, fais ce que je te propose dans mon post précédent.
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2006, 15h25   #10
Membre du Club
 
Inscription : novembre 2006
Messages : 64
Détails du profil
Informations personnelles :
Localisation : France, Territoire de Belfort (Franche Comté)

Informations forums :
Inscription : novembre 2006
Messages : 64
Points : 67
Points : 67
Par défaut Toujours le problème

Je suis spécialiste AS/400 , et je veux bien t'aider si tu as toujours le problème.
fred_crrm 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 09h24.


 
 
 
 
Partenaires

Hébergement Web