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

Langage Delphi Discussion :

inserer date nom rempli en sql


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Points : 69
    Points
    69
    Par défaut inserer date nom rempli en sql
    Bonjour
    j'ai un souci pour inserer un enregistrement quand la date de fin de garantie n'est pas rempli.
    voici mon code
    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
    Req := 'INSERT INTO produits';
             Req := Req + (' (Code_produit,Observations,Code_Caserne,Date_Maj,code_hierarchie,Code_tei');
             Req := Req + (' ,code_etat,Code_Apsi,Num_Serie,Date_Garantie,affectation,cto,Code_TypeProduit,reseau )');
             Req := Req + (' VALUES('+QuotedStr(IntToStr(prochain_numero))+',');
             Req := Req + (''+Quotedstr(M_Obs.Text)+')');
             Req := Req + (''+IntToStr(Integer(Cb_Caserne.items.objects[Cb_Caserne.itemindex])) +',');
             Req := Req + ('' +Quotedstr(convertsqlDate(DateDuJour))+',');
             Req := Req + (''+IntToStr(Integer(Cb_Hierarchie.items.objects[Cb_Hierarchie.itemindex])) +',');
             Req := Req + (''+ quotedstr(Edt_Tei.text) +',');
             Req := Req + (''+IntToStr(Integer(CB_Etat.items.objects[CB_Etat.itemindex])) +',');
             Req := Req + ('' +QuotedStr(Edt_Apsi.Text)+','+QuotedStr(Edt_Serie.text)+',');
             if Edt_DateGarantie.Text <>  '  /  /    '
             then       Req := Req + ('' +Quotedstr(convertsqlDate(Edt_DateGarantie.Text))+',')
             else       Req := Req + ('' +''+',') ;
             Req := Req + ('' +QuotedStr(Edt_Affectation.Text)+',');
             Req := Req + ('' +QuotedStr(Edt_cto.Text)+',');
             Req := Req + (''+IntToStr(Integer(CB_ClProduit.items.objects[CB_ClProduit.itemindex])) +')');
     
             ExecuteQuery;
    C'est à la ligne else que se produit l'erreur au moment de l'execution.
    j'ai bien une solution faire un insert sans la date
    et refaire un update sur le meme enregistrement car ca fonctionne pour une modification
    partie du code en update
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     if (Edt_DateGarantie.Text =  '  /  /    ') or  (Edt_DateGarantie.Text = '01/01/1900')
               then Req := Req + ',Date_garantie = null'
               else   Req := Req + ',Date_garantie =' +  Quotedstr(convertsqlDate(Edt_DateGarantie.Text));
    mais je trouve cela un peu lourd

    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Points : 69
    Points
    69
    Par défaut
    j'ai resolu le problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     if Edt_DateGarantie.Text <>  '  /  /    '
             then       Req := Req + ('' +Quotedstr(convertsqlDate(Edt_DateGarantie.Text))+',')
             else       Req := Req + ('NULL'+',') ;

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Points : 69
    Points
    69
    Par défaut
    la solution précédente n'est pas bonne pour insert
    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     if Edt_DateGarantie.Text <>  '  /  /    '
             then       Req := Req + ('' +Quotedstr(convertsqlDate(Edt_DateGarantie.Text))+',')
             else       Req := Req + ('NULL'+',') ;

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

Discussions similaires

  1. [PostGre SQL] recuperer date non rempli
    Par claireenes dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/07/2006, 10h59
  2. Constante Date dans une requête SQL
    Par tarbala dans le forum Autres SGBD
    Réponses: 1
    Dernier message: 25/04/2006, 16h24
  3. [MySQL] Comparer des info date dans une requete SQL
    Par kaygee dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 06/01/2006, 21h56
  4. [Date] Date courante au format SQL
    Par Mister Nono dans le forum JDBC
    Réponses: 3
    Dernier message: 17/03/2005, 16h57
  5. date d'une requete sql
    Par innosang dans le forum Bases de données
    Réponses: 4
    Dernier message: 28/04/2004, 09h27

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