IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Resultat de requête différent entre Access et Toad


Sujet :

Requêtes et SQL.

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut Resultat de requête différent entre Access et Toad
    Bonjour,

    Je fais des requetes via ODBC (ACCESS / ORACLE) et le resultat de ma requete est différente entre ACCESS et TOAD.

    TOAD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT BASE.PV_REPERE as REAL
    FROM BASE
    WHERE BASE.ITEM='82819426'
    GROUP BASE.PV_REPERE
    RESULTAT => 59,2996 qui est bon

    ACCESS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT BASE_PV_REPERE as REAL
    FROM BASE
    WHERE BASE_ITEM='82819426'
    GROUP BASE_PV_REPERE
    RESULTAT => 592996 qui est faux

    Le probleme c'est que access ne prend pas en compte la virgule.

    J'ai regardé sur le forum et j'ai trouvé la fonction CAST mais elle ne semble pas fonctionner sur ACCESS.

    PI => Le format du champ sur ORACLE "PV_REPERE " est Numérique Précision 20 et décimale 4.

    Si vous avez une petite piste. Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 628
    Points : 34 333
    Points
    34 333
    Par défaut
    Salut,
    il existe de nombreuses fonctions de cast d'une variable
    - Cint pour caster en entier
    - CDbl
    - CStr
    - etc.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par jpcheck Voir le message
    Salut,
    il existe de nombreuses fonctions de cast d'une variable
    - Cint pour caster en entier
    - CDbl
    - CStr
    - etc.
    J'ai bien essayé de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CDbl(BASE.PV_REPERE) AS REAL
    et les autres aussi et toujours le même resultat.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Essai avec la fonction format
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    format(BASE.PV_REPERE,"# ##0,0000") AS REAL
    Amicalement

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par DMboup Voir le message
    Essai avec la fonction format
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    format(BASE.PV_REPERE,"# ##0,0000") AS REAL
    RESULTAT => 592 996,0000

    C'est pas encore cela

    Si quelqu'un à une autre solution.

    Merci

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 628
    Points : 34 333
    Points
    34 333
    Par défaut
    mais attention, il me semble que real est un nom spécifique à Access, essaie en mettant As Bidon pour voir ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par jpcheck Voir le message
    mais attention, il me semble que real est un nom spécifique à Access, essaie en mettant As Bidon pour voir ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    format(BASE.PV_REPERE,"# ##0,0000") AS BIDON
    RESULTAT => 592 996,0000

    C'est pas encore cela ...

  8. #8
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    Si tu ouvres la table BASE (table liée ODBC si j'ai bien compris) en mode création, quel est le type du champ BASE_PV_REPERE ?

    S'il n'est pas bon, il n'y a rien que l'on puisse faire au niveau de la requête Access.
    Dans ce cas il faudrait peut-être créer une vue dans Oracle qui ferait le cast en type FLOAT.
    FLOAT est mappé en Double par driver ODBC.

    A+

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    PV_REPERE => Numérique

    • Taille du champ => Décimal
    • Précision => 20
    • Echelle => 4
    • Décimal => Auto


    J'ai fait un autre test sur un autre ITEM qui lui avait que 2 chiffres apres la virgule (dans la table ORACLE) , et Resultat TOAD => 20,20 et ACCESS 20,20.

    Cela plante que si j'ai 4 chiffres après la virgule.

    Pour faire une vue en "cast en type FLOAT" il faut etre DBA et ce n'est pas mon cas, j'ai juste l'accès aux tables en lecture.

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Le problème est réglé !!!!

    C'était juste un problème de pilote ODBC car j'avais pris les pilotes "ODBC ORACLE 9I" alors que ceux de "microsoft ODBC pour ORACLE" fonctionne parfaitement...

    Bon 2 jours pour trouver cela c'est pathétique surtout que la modification prend environ 30 secondes.

    Merci à ceux qui ont essayé de m'aider .

    Merci aussi à DEVELOPPEZ.COM pour ces nombreux TUTUS et exemple car ils sont vraiment bien fait .

  11. #11
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Citation Envoyé par nicky0007us Voir le message
    Merci aussi à DEVELOPPEZ.COM pour ces nombreux TUTUS et exemple car ils sont vraiment bien faits.
    C'est vrai qu'on aime bien la danse classique.

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par nicky0007us Voir le message
    Merci aussi à DEVELOPPEZ.COM pour ces nombreux TUTUS et exemple car ils sont vraiment bien fait .
    c'etait TUTOS, c'est l'émotion d'avoir trouvé la solution !!!!

    Merci encore

    A+

Discussions similaires

  1. [AC-2007] Requete donnant un resultat différent entre Access et Excel
    Par comme de bien entendu dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 12/06/2013, 10h44
  2. [AC-2007] [EX-2010] Résultat de la requête différent sur Access ou Excel
    Par vibos dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 25/02/2013, 13h18
  3. Retour différent entre Access et SQL Server
    Par Jean-Philippe André dans le forum Langage SQL
    Réponses: 1
    Dernier message: 03/02/2012, 09h51
  4. requête différente entre mysql et postgresql
    Par DiverSIG dans le forum Langage SQL
    Réponses: 6
    Dernier message: 04/12/2009, 15h05
  5. Tris différents entre ACCESS et Oracle !
    Par Toutatis dans le forum Oracle
    Réponses: 1
    Dernier message: 16/05/2006, 14h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo