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 :

Addition de 2 champs


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Septembre 2007
    Messages : 11
    Par défaut Addition de 2 champs
    Bonjour, je suis débutant. J'utilise Mybase et Delphi 7 pour gérer une base de données.
    Je souhaite qu'un des champs (C1) comporte le résultat de l'addition de deux autres champs (C2 et C3) soit C1=C2+C3.
    Y a t-il un moyen automatique pour que la valeur de C1 de chaque enregistrement soit calculée ? Quelles sont les différentes solutions ?

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Je te dirais d'utiliser une requete

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Update [Le nom de la table]
    set 
      C1 = C2 + C3
    Where 
      C1 = 0

    Dans l'exemple ci dessus, tous les champs C1 de la table seront mis à jour avec l'addition, si C1 est égal à 0
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  3. #3
    Membre éprouvé
    Avatar de TicTacToe
    Inscrit en
    Septembre 2005
    Messages
    1 940
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 940
    Par défaut
    Une aternative, si C1 n'est pas un champ physique de ta table et n'a pas besoin de l'être,
    tu peux utiliser les champs calculés au niveau de ton dataset.

    1/ créer le champs calculé (dans la liste des champs et de FieldKing fkCalculated)

    2/ puis traitement sur C1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure MaForm.TableCalcFields(DataSet: TDataSet);
    begin
      DataSet.FieldByName( 'C1' ).AsInteger := DataSet.FieldByName( 'C2' ).AsInteger + DataSet.FieldByName( 'C3' ).ASInteger;
    end;
    Section Delphi
    La mine d'or: La FAQ, les Sources

    Un développement compliqué paraitra simple pour l'utilisateur, frustrant non ?
    Notre revanche ? l'inverse est aussi vrai ;-)

  4. #4
    Membre Expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Par défaut
    :Salut:
    bienvenue sur le Forum
    ou encore mieux

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT C2,C3,(C2+C3) AS C1 FROM [Votre Table]

    comme ça vous pouvez viré un champs de votre table et pourvoir appliquer des filtre sur champs.

  5. #5
    Membre très actif Avatar de TryExceptEnd
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    501
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 501
    Par défaut
    Tu utilise l'evenement "BeforePost" de ta table pour coder une instruction du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaTableC1.value := MaTableC2.value + MaTableC3.value;
    Et c'est tout..

  6. #6
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Septembre 2007
    Messages : 11
    Par défaut Merci
    Bonjour,
    Je vous remercie des conseils. Concrêtement, j'ai opté pour la dernière solution (j'étudierai le SQL plus tard). Mais au lieu de passer par "Beforepost", je suis passé par l'événement "OnClacFields".

Discussions similaires

  1. addition suivant un champ identique
    Par Frenchguy dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 16/08/2007, 17h53
  2. [Table / VBA] Addition automatique des champs
    Par NiKoTiNe dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 04/05/2007, 09h59
  3. addition de deux champs et resultat dans un troisième
    Par reventlov dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 24/03/2006, 15h30
  4. Addition de plusieurs champs dans champ indépendant
    Par snoopy69 dans le forum Access
    Réponses: 3
    Dernier message: 11/11/2005, 09h37
  5. Addition de plusieurs champs...
    Par mozvillat dans le forum Langage SQL
    Réponses: 11
    Dernier message: 22/09/2005, 16h19

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