Voila l'environnement est une Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production.

La requête qui pose probléme est la suivante:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
31
32
33
34
 
SELECT distinct cast(SO0.nrid AS VARCHAR2(15)) AS RefPartenaire,
                        SO0.societe AS NomCommercial,
                        SO0.adresse AS Adresse,
                        SO0.complement AS Complement,
                        SO0.street_nb AS Norue,
                        SO0.code_post AS CodePostal,
                        SO0.loc AS Commune,
                        NVL(SO0.tel1, SO0.tel2) AS Telephone,
                        SO0.e_mail AS Mail,
                        SO0.web_link AS SiteWeb,
                        '0' AS IsPartenaireSouhait,
                        DECODE(SO0.var65, 'Réseau', '1', '0') AS IsPartenaireReseau,
                        NVL(Xattrib_part.date_attrib,TO_DATE('19000101', 'YYYYMMDD'))
          FROM PR0,
               XPR0_OFFRES,
               SO0,
               XSO0_ZONE,
               XZONES_COMMUNE,
               sysadm.xattrib_part
         WHERE pr0.so0_nrid = so0.nrid
           and pr0.var1 = 'Réseau Partenaire'
           and pr0.var2 = 'Signée'
           and xpr0_offres.pr0_nrid = pr0.nrid
           and xpr0_offres.type_nrid = 'MAINTEN'
           and xpr0_offres.marque_nrid = 'DV'
           and XSO0_ZONE.so0_nrid = SO0.nrid
           and XZONES_COMMUNE.id_commune = XSO0_ZONE.id_commune
           and XZONES_COMMUNE.code_insee LIKE SUBSTR('92000', 1, 2) || '%'
           and xattrib_part.so0_nrid(+) = SO0.nrid
           and xattrib_part.type_offre(+) = 'Maintenance'
         ORDER BY NVL(Xattrib_part.date_attrib,
                      TO_DATE('19000101', 'YYYYMMDD')),
                  SO0.societe;
Les erreurs produites sont:

ORA-12801:Error signaled in Parralel Query Server P001.
ORA-00910:Specified length too long for its datatype.

Cette requête fonctionne en prod, telle quelle.

Si j'enléve le cast sur le champ SOO.NRID, la requête fonctionne également. Le champ S00 NRID est un NUMBER de 15.

Pouvez vous m'aider à résoudre ce probléme autrement qu'en modifiant la requête et en supprimant le CAST ?