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

WinDev Discussion :

probleme insert into avec mysql et date? [WD15]


Sujet :

WinDev

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 36
    Points : 35
    Points
    35
    Par défaut probleme insert into avec mysql et date?
    bonjour

    - ma connexion windev et accés natif mysql :OK
    -afficher le contenu du ma base de donné mysql (liste_m)sur tableau par programmation(requete sql :sqlexec): OK


    table de ma BD=liste_m(idliste :I automatique,name,date_naissance)

    mon probleme:si j'ajoute su mon fenetre 2 sai_text un pour name autre pour date de naissance

    et un boutton valider l'ajout enregistrement code:
    SQLExec("Insert INTO liste_m(name,date_naissance) VALUES('"+sai_name+"','"+sai_Naissance+"')", "REQ1")

    tout est OK si sai_naissance contient 1 date valide
    si sai_naissance vide l'ajout enregistrement ne se fait pas

    aide????
    merci pour vous

  2. #2
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 766
    Points
    1 766
    Par défaut
    Citation Envoyé par 3alit Voir le message
    tout est OK si sai_naissance contient 1 date valide
    si sai_naissance vide l'ajout enregistrement ne se fait pas
    Est-ce que cette rubrique est définie comme nullable dans mysql (non obligatoire) ?
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

  3. #3
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 378
    Points : 4 494
    Points
    4 494
    Par défaut
    Bonjour

    Citation Envoyé par 3alit Voir le message
    si sai_naissance vide l'ajout enregistrement ne se fait pas
    SQLExec retourne quoi ? Faux ?
    Si c'est le cas que dit SQL.MessErreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SI PAS SQLExec(...  ALORS
       SQLInfogene("REQ1")
       Info(SQL.MessErreur)
    FIN

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 36
    Points : 35
    Points
    35
    Par défaut
    Est-ce que cette rubrique est définie comme nullable dans mysql (non obligatoire) ?
    si je change cette rubrique null or not null :
    meme reponse :pas d'ajout nouveau enregistrement


    avec SQLInfoGene("REQ51")
    Info(SQL.MesErreur)

    voici message d'erreur:

    L'erreur suivante a été renvoyée par la base données<localhost>:
    Numéro d'erreur=<1292>
    Message d'erreur:
    Incorect date value: "for column 'naissance' at row 1

    IEWDMSQL=100.23
    Module=<WDSQL>

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 188
    Points : 12 744
    Points
    12 744
    Par défaut
    Bonjour,
    Il faut gérer à la main le cas où une date n'est pas renseignée, et insérer Null en lieu et place d'une chaine.
    Null n'est pas une chaine vide.

    Tatayo.

  6. #6
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 378
    Points : 4 494
    Points
    4 494
    Par défaut
    J'utilise une vieille version de MySql (4.1.12a)
    Sur cette version, si on spécifie NOT NULL pour une colonne date il met automatiquement comme valeur par défaut '0000-00-00'

    A tout hasard essaye de remplacer sai_Naissance dans ton code par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (DateValide(sai_Naissance) ? sai_Naissance SINON "0000-00-00")
    Ce qui donnerait un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    sReq est une chaîne = ChaîneConstruit([
    Insert INTO liste_m (name, date_naissance) VALUES('%1', '%2')
    ], sai_name, (DateValide(sai_Naissance) ? sai_Naissance SINON "0000-00-00"))
     
    SI PAS SQLExec(sReq, "REQ1") ALORS ...

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 36
    Points : 35
    Points
    35
    Par défaut
    MERCI CA MARCHE AVEC CETTE METHODE

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

Discussions similaires

  1. Probleme INSERT INTO avec un SELECT
    Par jujoluca dans le forum SQL
    Réponses: 2
    Dernier message: 09/01/2011, 14h14
  2. [MySQL] probleme avec INSERT INTO avec Mysql
    Par monlou dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/03/2010, 01h41
  3. probleme insert into avec JDBC
    Par GuiomNantes dans le forum JDBC
    Réponses: 4
    Dernier message: 03/07/2009, 12h04
  4. insert into avec une date
    Par LeXo dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/11/2006, 23h08
  5. INSERT INTO avec date (asp/access)
    Par ddeee dans le forum ASP
    Réponses: 2
    Dernier message: 30/03/2006, 14h07

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