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

Firebird Discussion :

base de donné sous firebird & delphi 2010


Sujet :

Firebird

  1. #1
    Membre du Club Avatar de fifi_dz
    Inscrit en
    Janvier 2011
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 54
    Points : 69
    Points
    69
    Par défaut base de donné sous firebird & delphi 2010
    slt
    je travaille sous le delphi 2010 la base de donné sous firebird et les composant s UIB pour accéder a la base de donné
    je voulais tester l'affichage de la base de donné dans un stringGrid mais kand je l'éxecute et je click sur le button , on m'affiche rien
    ps: j'ai testé la base de donné si elle est bien connecté , tout est bien
    peut etre vous avez une idée différente sur ce que je fais
    voisi le code que j'ai implémenté:
    Code delphi : 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
    22
    23
    24
    25
    procedure TForm1.Button1Click(Sender: TObject);
    var
       i:integer;
     
    begin
    i:=1;
    Query.Close();
    Query.SQL.Clear;
     
    Query.SQL.Add('SELECT NOM,PRENOM FROM ESSAIE1' );
     
    Query.Open();
     
         Grid.RowCount:=2;
      while Not Query.Eof do
        begin
          Grid.Cells[0,i]:=Query.Fields.ByNameAsString['NOM'];
          Grid.Cells[1,i]:=Query.Fields.ByNameAsString['PRENOM'];
             Inc(i);
          Grid.RowCount:=Query.Fields.RecordCount+1;   Query.Next;
     
        end;
     
       Query.Close();
    end;

  2. #2
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Bonsoir,

    Vous devez exécuter votre requête au sein d'une transaction en utilisant le composant correspondant :

    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
    Query.Close();
    Query.SQL.Clear;
    Query.SQL.Add('SELECT NOM,PRENOM FROM ESSAIE1');
    IF UIBTransaction1.InTransaction Then  UIBTransaction1.Commit;
     Try
     UIBTransaction1.StartTransaction;
     Query.Open;
     
    //Votre boucle de lecture
    
     UIBTransaction1.Commit;
     Except
     UIBTransaction1.RollBack:
     End;
    Et ne pas oublier la méthode de déplacement du DataSet qui ne figure pas dans votre code :
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  3. #3
    Membre du Club Avatar de fifi_dz
    Inscrit en
    Janvier 2011
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 54
    Points : 69
    Points
    69
    Par défaut
    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
    Query.Close();
    Query.SQL.Clear;
    Query.SQL.Add('SELECT NOM,PRENOM FROM ESSAIE1');
    IF UIBTransaction1.InTransaction Then  UIBTransaction1.Commit;
     Try
     UIBTransaction1.StartTransaction;
     Query.Open;
     
    //Votre boucle de lecture
    
     UIBTransaction1.Commit;
     Except
     UIBTransaction1.RollBack:
     End;
    j'ai essayé ta méthode mais toujour rien , on m'affiche rien

    Et ne pas oublier la méthode de déplacement du DataSet qui ne figure pas dans votre code :
    sii elle est figure dans le code , elle est juste apré :
    Grid.RowCount:=Query.Fields.RecordCount+1;
    merci

  4. #4
    Membre éclairé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Points : 681
    Points
    681
    Par défaut
    Qu'es-ce qui n'affiche rien ?
    Avez-vous lié le compo transaction avec celui de la Database ?
    Recevez-vous un message ?
    Avez-vous d'abord etabli une connexion avec la BDD ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Try
    UIBDatabase1.Connected:=true;
    Except
    Showmessage('Connexion non etablie').
    End;
    Essayez de tester juste aprés l'Ouverture si le DataSet est rempli:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Query.Open;
    Showmessage(IntToStr(Query.RecordCount));
    Citation Envoyé par fifi_dz Voir le message
    sii elle est figure dans le code , elle est juste apré :
    Désolé, je n'ai pas fais attention parce qu'elle se trouve sur la même ligne que Query.Fields.RecordCount+1
    Si quelqu'un t'a offensé, ne cherche pas à te venger; assieds-toi au bord de la rivière et, bientôt, tu verras passer son cadavre.

    Lao Tseu - un sage chinois

    Celui qui lutte contre les monstres doit veiller à ne pas le devenir lui-même.
    Et quand ton regard pénètre longtemps au fond d'un abîme, l'abîme, lui aussi, pénètre en toi.

    Friedrich Nietzsche - Par délà le bien et le mal

  5. #5
    Membre du Club Avatar de fifi_dz
    Inscrit en
    Janvier 2011
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 54
    Points : 69
    Points
    69
    Par défaut
    Avez-vous lié le compo transaction avec celui de la Database ?
    oui toute est bien lié

    voici le code exacte

    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
    22
    23
    24
    25
    26
    27
    28
    procedure TForm1.Button2Click(Sender: TObject);
    var
       i:integer;
       info:Tficheinfo;
    begin
       i:=1;
    Query.Close();
    Query.SQL.Clear;
     
    {Commande:TmbTBXStringGrid;  }
     
     
    Query.SQL.Add('SELECT NOM,PRENOM FROM TAB' );
     
    Query.Open();
     
      while Not Query.Eof do
        begin
          Grid.Cells[0,i]:=Trim(Query.Fields.ByNameAsString['NOM']);
          Grid.Cells[1,i]:=Query.Fields.ByNameAsString['PRENOM'];
     
          Query.Next;
          Grid.RowCount:=Query.Fields.RecordCount+1;
          Inc(i);
        end;
     
       Query.Close();
    end;
    le problème c'était au niveau de la requête , au lieu de mettre le nom de la table , j'ai mi le nom de la base de donné
    merci

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

Discussions similaires

  1. Création d'une base de données sous firebird 2.5
    Par Zizou7 dans le forum Firebird
    Réponses: 12
    Dernier message: 30/04/2014, 11h18
  2. base de donné sous firebird &delphi 2010
    Par fifi_dz dans le forum Bases de données
    Réponses: 9
    Dernier message: 14/01/2011, 00h02
  3. Créer un editeur de base de donné sous delphi
    Par lassad dans le forum Bases de données
    Réponses: 6
    Dernier message: 19/10/2005, 01h24
  4. Accès aux base de données sous Delphi 7 Edition Studio Perso
    Par renorx dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/02/2005, 14h24
  5. Transfert de table entre base de données sous delphi
    Par gregcommune dans le forum Bases de données
    Réponses: 3
    Dernier message: 27/07/2004, 07h56

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