Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1420 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [DELPHI] dBgrid

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[DELPHI] dBgrid

n°645822
lincam
Posté le 17-02-2004 à 17:53:03  profilanswer
 

J'ai trouvé comment utiliser mysql avec delphi (grande victoire pour moi :p )
 
http://www.fichtner.net/delphi/mysql.delphi.phtml
 
Depuis ce matin, je bloque, je cherche a afficher le resultat de m'a requete dans un dbgrid mais pas moyen. J'ai écumé google et tous les site delphi, mais je n'ai pas trouvé d'explication clair sur comment le fair
 
7 heures de recherche plus tard, je me tourne vers vous car je commence a craquer :)
 
voici mon code :
 

Code :
  1. unit Unit1;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls, mySQL,inifiles, Unit4, Grids, DBGrids, DB;
  6. type
  7.   TForm1 = class(TForm)
  8.     DBGrid1: TDBGrid;
  9.     dts: TDataSource;
  10.     procedure FormCreate(Sender: TObject);
  11.   private
  12.     { Déclarations privées }
  13.   public
  14.     { Déclarations publiques }
  15.   end;
  16.   function connexion(ip,username,password,base,resultat:string):string;
  17. var
  18.   Form1: TForm1;
  19.   read: array of string;
  20.   FichierIni : TIniFile;
  21.   mysql : PMYSQL;
  22.   myrow : PMYSQL_ROW;
  23.   myres : PMYSQL_RES;
  24.   mycout : longword;
  25.   ligne:string;
  26.   I: Word;
  27. implementation
  28. function connexion(ip,username,password,base,resultat:string):string;
  29.     begin
  30.       mysql := mysql_init(nil);
  31.           if mysql_real_connect(mysql, PAnsiChar(ip), PAnsiChar(username), PAnsiChar(password), PAnsiChar(base), 0, nil, 0) <> nil then
  32.              begin
  33.               end
  34.                else
  35.                 begin
  36.                 showmessage('La connexion a mysql a échoué');
  37.                 end;
  38.       end;
  39. {$R *.dfm}
  40. procedure TForm1.FormCreate(Sender: TObject);
  41. begin
  42.     FichierIni:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'config.ini');
  43.     SetLength(read, 5);
  44.     read[0]:=FichierIni.ReadString('mysql','ip','0');
  45.     read[1]:=FichierIni.ReadString('mysql','username','n');
  46.     read[2]:=FichierIni.ReadString('mysql','password','n');
  47.     read[3]:=FichierIni.ReadString('mysql','base','n');
  48.     connexion(read[0],read[1],read[2],read[3],read[4]);
  49.     mysql_query(mysql, pChar('select * from phpbb_smilies'));
  50.     myres := mysql_store_result(MySQL);
  51.     mycout := mysql_num_fields(myres);
  52.     myrow := mysql_fetch_row(myres);
  53.    while myrow <> nil do begin
  54.          for I := 0 to mycout - 1 do begin
  55.               //myrow[i];  
  56.               end;
  57.      myrow := mysql_fetch_row(myres);
  58.   end;
  59. end;
  60. end.


 
Si quelqu'un pouvait m'expliquer clairement comment utiliser un dbgrid dans le code ci dessus, je lui en serais extremement reconnaisant

mood
Publicité
Posté le 17-02-2004 à 17:53:03  profilanswer
 

n°645876
Titalium
Posté le 17-02-2004 à 18:43:58  profilanswer
 

Pour me connecter à une base MySQL depuis Delphi, je me sers personnellement des drivers ODBC MySQL que tu peux DL sur le site officiel. Une fois ceci fait, tu te créé un DSN sur ton serveur de base et le tiour est joué : tu peux alors utiliser tes composants ADO comme si c'était une base Access.
 
Pour ce qui est de ta DBGrid, tu pose un ADOConnect, un ADOTable ou ADOQuery, un DataSource. Ensuite, tu connecte ta base MySQL par le ADOConnect en te servant de ton DSN, tu réalise tes sélection avec L'ADOTable ou ADOQuery en utilisant l'ADOConnect, tu fais pointer le DataSource sur l'ADOTable ou ADOQuery, et enfin taDBGrid sur le DataSource.
 
Voila, pour ma part c'est comme ça que je procède.

n°645900
lincam
Posté le 17-02-2004 à 19:10:14  profilanswer
 

Je te remerciede t'as réponse, si personne n'a d'autre solution je passerais par l'ado meme si je preferais eviter

n°645947
Titalium
Posté le 17-02-2004 à 20:05:16  profilanswer
 

Pourquoi t'aime pas ADO ? Je trouve très simple et plutot rapide...

n°646279
os2
Posté le 18-02-2004 à 00:40:50  profilanswer
 

lincam a écrit :

Je te remerciede t'as réponse, si personne n'a d'autre solution je passerais par l'ado meme si je preferais eviter  


 
passe par les composants dbexpress


---------------
Borland rulez: http://pages.infinit.net/borland

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [DELPHI] dBgrid

 

Sujets relatifs
[DELPHI] Boite de dialogue personnalisée ???Lancement dynamique d'une DLL sous Delphi
[Delphi-sql] Pb Dbgrid vers Dbedit[Delphi]DBGrid forcé la scrollbar vert?
[DELPHI] DBGrid et Query multi table[Delphi] Alignement dans un DBGrid
[Delphi] DBGrid et tris...Delphi, DBGrid,TQuery
[delphi] On peut activer le drag and drop sur un DBgrid ?[Delphi 5] Bonjour , quelq1 pourait m'aidait pour les DBgrid ...
Plus de sujets relatifs à : [DELPHI] dBgrid


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR