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 :

Probleme CAST nombre dans requête SQL vers Access [AC-2010]


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 69
    Points : 60
    Points
    60
    Par défaut Probleme CAST nombre dans requête SQL vers Access
    Bonjour,

    Encore une fois, j'ai besoin de votre aide sur une requête SQL dans Access.

    Je vous explique, je dispose d'une requête en Access avec différentes tables. J'utilise cette requête pour former une nouvelle table.

    Le problème arrive lorsque je récupère des nombres numeric et plus précisément des décimaux.

    J'utilise un Select et un insert into. Pour faire passer mes nombres dans ma requête SQL, je suis obligé de remplacer les virgules par des points pour que ça passe dans SQL mais voilà, ça ne passe plus dans Access. Access me met une erreur sur le type. (Type de données incompatible dans l'expression du critère.)

    J'ai voulu essayer avec la méthode CAST, mais soit je ne sais pas m'en servir, soit ça ne peut pas aller à cet endroit.

    Voici mes requêtes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine = "select * from TECH_PRIX WHERE Id_Prestation = " & rec_Prestation.Fields("Id") &  " AND Prix_HT = " & Replace(rec_Prix.Fields("Prix_HT"), ",", ".")

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine = "insert into TECH_PRIX( Id_Prestation,  Prix_HT) VALUES (" & rec_Prestation.Fields("Id") & ", " & Replace(rec_Prix.Fields("Prix_HT"), ",", ".") & "  ) "
    Pour l'instant malgré toute mes tentatives ça reste un vrai casse tête alors si vous connaissez une solution ce serait super.

    Merci d'avance.

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 69
    Points : 60
    Points
    60
    Par défaut
    Bon, je viens de résoudre ce problème mais je n'ai pas d'explication logique à ce qu'il se passait. Lorsque je mettais le prix au format décimal avec 0 chiffre après la virgule le code s'exécutait correctement. Mais dès que je demandé un chiffre de plus cela me mettait l'erreur de type.

    J'ai finalement changé le type de mon champ id et là comme par magie, j'ai le droit de mettre 2 chiffres après la virgule.

    Si vous avez une explication logique, je suis curieux sinon tant pis.

    Merci en tout cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Variables dans requête SQL d'Excel vers base Access
    Par Banjalex dans le forum Excel
    Réponses: 2
    Dernier message: 20/03/2014, 16h53
  2. Probleme de date dans requete SQL vers base de donnée MS Access
    Par Uren dans le forum Persistance des données
    Réponses: 1
    Dernier message: 04/08/2008, 13h06
  3. probleme requête sql sous access 2003
    Par jeanda dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 22/04/2008, 09h05
  4. Utilisation de variable Date dans requète SQL sous Access
    Par noakiss dans le forum VBA Access
    Réponses: 3
    Dernier message: 26/03/2008, 09h37
  5. [VB6]Fonction dans requête SQL Access
    Par jean-pierre96 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 21/04/2006, 19h44

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