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 :

Problème requete insert en vba, impossible d'ajouter une date.


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Points : 58
    Points
    58
    Par défaut Problème requete insert en vba, impossible d'ajouter une date.
    Bonjour bonjour !

    Bon et bien je viens vers vous pour un problème simple dans ma requête : j'ai un soucis dans ma requete insert, impossible d'ajouter des dates..

    J'ai essayé avec format, avec CDate, de l'insérer comme un string, en utilisant des quotes, des guillements, et des dièses..

    Et j'ai toujours un message d'erreur qui me dit :
    syntax error..

    Voici une petite partie de ma requète :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Const REQ_INSERT As String = "Insert Into client(NUMCTR,CTRRAT,NOMCTR,DATSAI) Values ('999999','123456','GARNIER Florian','01/12/1996')"
    Merci de votre aide,

    Cordialement,

    Peace

  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 656
    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 656
    Points : 34 350
    Points
    34 350
    Par défaut
    salut,
    un peu de lecture sur les detections de bug dans les requetes SQL
    http://cafeine.developpez.com/access...el/debugprint/

    et notamment
    http://cafeine.developpez.com/access...ugprint/#LVI-C

    la syntaxe des dates se fait sous la form #MM/DD/YYYY#

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Points : 58
    Points
    58
    Par défaut
    Bonjour et merci pour ta réponse !

    Toutefois, je travaille avec des tables foxpro donc je suppose que le format date ne doit pas être le meme :

    J'ai essayé avec format, avec CDate, comme un string, en utilisant des quotes, des guillements, et des dièses..
    J'ai toujours le meme message d'erreur : syntax error ...

    Du coup, si quelqu'un peut reprendre ma requete et me l'ecrire comme il faut, parce que je vois pas ce qui cloche ?!

    Voici ma requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Const REQ_INSERT As String = "Insert Into client(NUMCTR,CTRRAT,NOMCTR,DATSAI) Values ('999999','123456','GARNIER Florian',#01/12/1996#)"
    J'ai également essayé en inversant la date, car quelqu'un m'a expliqué que les dates s'enregistraient sous cette forme sous foxpro : 1996/12/01

    Merci pour votre aide !

    Peace

  4. #4
    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 656
    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 656
    Points : 34 350
    Points
    34 350
    Par défaut
    Ok,
    le format sous foxpro est de type
    'YYYY/MM/DD' comme dans cet exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQL = "INSERT INTO tmpmodrc (Asset_code,modif_no,policy,issue_date,kit_part,sending,price,fact_start,fact_done,codechange,mod_type,mod_id,descript,manual,last_date,last_time) VALUES ('CPLE-A',' 1','M','1990/01/03','E077572 & more','40',2,'774',' ',' ','O',' ','Reduce the noise effect on the FBS-B/C measurement. Serial N. 764 has been done.','CPLT-A','2003/07/11',093416)"

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Points : 58
    Points
    58
    Par défaut
    Merci pour ta réponse !

    J'avais déjà pensé à inverser ma date, mais pas en utilisant simplement de quotes !

    Par contre, il me renvoi une erreur "Data type mismatch", donc j'ai peur qu'il ne considère pas ma valeur comme une valeur de type date ?!!?

    Edit: Je viens de tomber sur le site de ton exemple, dommage qu'il faille s'inscrire pour avoir la solution :S :X

    Peace

  6. #6
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Points : 58
    Points
    58
    Par défaut
    Bonjour !!!

    Je viens enfin de trouver la syntaxe exacte pour enregistrer une valeur de type date dans ma table foxpro !!

    Et donc, les solutions sont :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public Const REQ_INSERT As String = "Insert Into test(DATSAI) Values ({^2005/06/18})"
    Public Const REQ_INSERT As String = "Insert Into test(DATSAI) Values (Date(2005,06,17))"
    Peace

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

Discussions similaires

  1. Impossible d'ajouter une imprimante !
    Par Le Pharaon dans le forum Windows XP
    Réponses: 3
    Dernier message: 17/11/2015, 19h27
  2. [AC-2007] Problème syntaxe requete INSERT INTO VBA
    Par afrogwada dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/07/2013, 10h44
  3. Problème requete insert et table en read Only
    Par cilies38 dans le forum Requêtes
    Réponses: 2
    Dernier message: 04/05/2009, 22h51
  4. [patition magic 8.0] impossible d'ajouter une partition
    Par sorari dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 30/06/2007, 16h47
  5. Réponses: 1
    Dernier message: 12/03/2007, 19h10

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