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

Bases de données Delphi Discussion :

DBGrid erreur Update si champ vide


Sujet :

Bases de données Delphi

  1. #1
    Membre averti
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Points : 337
    Points
    337
    Par défaut DBGrid erreur Update si champ vide
    Bonsoir,
    J'ai une erreur lorsque je modifie mon dbgrid.

    Cas de figure 1 :
    Dans ma base, j'ai un champ qui n'a pas l'obligation d'être rempli, et qui est donc vide.
    Si j'ouvre un form avec un dbgrid, et que j'ajoute du texte au champs facultatif, j'ai une erreur de mise à jour.

    Cas de figure 2 :
    Par l’intermédiaire de IBEasy, j'administre ma base et j'ajoute une valeur dans le fameux champs.
    J'ouvre mon form, la valeur apparait bien dans le dbgrid. Je peux même supprimer la valeur en question.

    Par contre lorsque mon champ est redevenu vide, je ne peux plus faire la mise à jour.

    J'avais pensé filtrer les requêtes et lorsqu'un champs est vide je force à ajouter un texte comme par exemple : "AUCUN"...

    Qu'en pensez vous?

    Merci beaucoup.

  2. #2
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    C'est quoi tes versions de Delphi et avec quoi tu interfaces ta Base ? Si tu peux indiquer ton type de base (InterBase ?) et la version...

  3. #3
    Membre averti
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Points : 337
    Points
    337
    Par défaut
    Salut, c'est Delphi 7 entreprise.

    J'interface avec les composants Interbase.
    IBDatabase, IBQuery, IBTransaction, IBUdateSQL

    J'ai aucun soucis concernant la connexion et les requetes, juste pour les updates.

    Voici le code sur mon UpdateSQL :

    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
    update TCLIENTS
    set
      ID = :ID,
      TITRE = :TITRE,
      NOM = :NOM,
      PRENOM = :PRENOM,
      ADRESSE = :ADRESSE,
      CODEPOSTAL = :CODEPOSTAL,
      COMMUNE = :COMMUNE,
      MAIL = :MAIL
    where
      ID = :OLD_ID and
      TITRE = :OLD_TITRE and
      NOM = :OLD_NOM and
      PRENOM = :OLD_PRENOM and
      ADRESSE = :OLD_ADRESSE and
      CODEPOSTAL = :OLD_CODEPOSTAL and
      COMMUNE = :OLD_COMMUNE and
      MAIL = :OLD_MAIL
    C'est le champ Mail qui pose problème...

    Merci de votre aide.

  4. #4
    Membre averti
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Points : 337
    Points
    337
    Par défaut
    J'ai le même problème pour les suppression de ligne...

    Tout ce qui fait appel à un champ vide coince...

  5. #5
    Membre averti
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Points : 337
    Points
    337
    Par défaut
    Ok je me suis fait avoir comme un bleu !

    Dans mon TUPdateSQL, j'avais ce 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
    update TCLIENTS
    set
      ID = :ID,
      TITRE = :TITRE,
      NOM = :NOM,
      PRENOM = :PRENOM,
      ADRESSE = :ADRESSE,
      CODEPOSTAL = :CODEPOSTAL,
      COMMUNE = :COMMUNE,
      MAIL = :MAIL
    where
      ID = :OLD_ID and
      TITRE = :OLD_TITRE and
      NOM = :OLD_NOM and
      PRENOM = :OLD_PRENOM and
      ADRESSE = :OLD_ADRESSE and
      CODEPOSTAL = :OLD_CODEPOSTAL and
      COMMUNE = :OLD_COMMUNE and
      MAIL = :OLD_MAIL
    Le problème venait des champs vides lors de la requete.
    J'ai donc modifié le code de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    update TCLIENTS
    set
      ID = :ID,
      TITRE = :TITRE,
      NOM = :NOM,
      PRENOM = :PRENOM,
      ADRESSE = :ADRESSE,
      CODEPOSTAL = :CODEPOSTAL,
      COMMUNE = :COMMUNE,
      MAIL = :MAIL
    where
      ID = :OLD_ID
    Voilou ! Problème résolu !

  6. #6
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    mieux utilisé IBDataset, et quand tu lui demande de crée les requets de modification avec l’éditeur d'ensemble de donnée, sélectionne le champ clé dans la zone "champ clé"
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

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

Discussions similaires

  1. champ vide en erreur a jointure de tables
    Par pierre22 dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 12/09/2007, 17h20
  2. champ vide et message d'erreur
    Par lionski dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 05/07/2007, 14h24
  3. [Update] sur champ vide
    Par userB dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/06/2007, 10h22
  4. message d'erreur quand un champs est vide
    Par VIRGINIE87 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 22/02/2007, 12h13
  5. Erreur champs vides
    Par RodEpsi dans le forum Bases de données
    Réponses: 12
    Dernier message: 01/12/2006, 20h38

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