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 :

probleme update et inner join


Sujet :

Bases de données Delphi

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 192
    Par défaut probleme update et inner join
    bonjour,
    j'ai un problème avec une requete sql, j'utilise delphi 2007 et firebird
    j'ai une table mère ( bon entre) qui a un champ date ,et une table fille (détail bon entre)
    je veux effectuer une mise à jour sur les enregistrement de la table fille qui se situe entre 2 dates
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE  BonEntre inner join  DetailBonEntre 
    on (DetailBonEntre.NumBonEntre=BonEntre.NumBonEntre) set  observation='ok' 
    (WHERE (BonEntre.DateBE)>[date1] And (BonEntre.DateBE)<[date2]));
    merci d'avance pour votre aide

  2. #2
    Membre confirmé Avatar de chh2008
    Inscrit en
    Mars 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2008
    Messages : 129
    Par défaut
    Bonjour,
    il faudrait changer le type de date, je m'explique fierbird utilise non pas le format jj/mm/aa mais mm/jj/aa donc il te sufira juste de faire une petite transformation de ton champ date pour l'adapter ctt.

    Exemple:
    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
    20
    21
     
    procedure TAbsence_Mois.SpeedButton1Click(Sender: TObject);
    VAR
    d1,d2,r1,r2 :String;
    begin
     
    d1:=DateToStr(DateTimePicker1.Date);
    r1:=d1[4]+d1[5]+d1[3]+d1[1]+d1[2]+d1[6]+d1[7]+d1[8]+d1[9]+d1[10];
    d2:=DateToStr(DateTimePicker2.Date);
    r2:=d2[4]+d2[5]+d2[3]+d2[1]+d2[2]+d2[6]+d2[7]+d2[8]+d2[9]+d2[10];
     
    Data.IBQuery1.Active:=false;
    Data.IBQuery1.Database:=data.IBDatabase1;
    Data.DSQuery1.DataSet:=data.IBQuery1;
    Data.IBQuery1.SQL.Clear;
    Data.IBQuery1.SQL.Add('select EMPLOYE.NUM_EMPLOYE, EMPLOYE.NOM, EMPLOYE.PRENOM, ABSENCE.DATE_ABSENCE, ABSENCE.DUREE_ABSENCE');
    Data.IBQuery1.SQL.Add('from employe join absence on employe.NUM_EMPLOYE=absence.NUM_EMPLOYE');
    Data.IBQuery1.SQL.Add('where DATE_ABSENCE between '+QuotedStr(r1)+' and '+QuotedStr(r2)+' Order by EMPLOYE.NUM_EMPLOYE');
    Data.IBQuery1.Active:=true;
    Absence_Mois.DBGrid1.DataSource:=Data.DSQuery1;
    end;

  3. #3
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 867
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 867
    Par défaut
    Pas sûr que les Update sur des jointures soient supportés par Firebird.
    Essaye avec des requêtes imbriquées:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE DetailBonEntre
    SET observation = 'ok'
    WHERE NumBonEntre in (SELECT NumBonEntre FROM BonEntre WHERE DateBE BETWEEN [date1] AND [date2])

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 192
    Par défaut
    merci pour vos réponses je vais les essayer

Discussions similaires

  1. Problème avec UPDATE et INNER JOIN
    Par korbn dans le forum Requêtes
    Réponses: 2
    Dernier message: 25/05/2009, 21h52
  2. [MySQL] UPDATE et INNER JOIN
    Par korbn dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 25/05/2009, 15h27
  3. UPDATE et INNER JOIN
    Par korbn dans le forum Requêtes
    Réponses: 4
    Dernier message: 22/11/2008, 05h28
  4. Probleme de SQL INNER JOIN WHERE
    Par korben06 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 05/06/2007, 19h18
  5. UPDATE avec INNER JOIN
    Par steelidol dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 04/03/2006, 00h56

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