Delphi et Mysql

mlamXE2 - 7 nov. 2012 à 17:36
 mlamXE2 - 9 nov. 2012 à 11:33
Bjr ;
Je viens de commencer un petit programme en delphi XE2 qui utilise une base de données Mysql. Mon problème est le suivant :
Dans ma table Mysql, j’ai un champ qui contient un nom de fichier texte formaté. Par la suite, je voudrais afficher les valeurs de ce champ dans un TrichEdit mais je ne trouve pas la solution. Je ne sais pas si je m’explique bien mais je vais essayer de le montrer avec les codes suivant :
Var
NomTable : Tstring ;
SQLRequete: Tstring;
…….
// LeTable est la table Mysql
NomTable := ‘LeTable.frm ‘;
// leChamp est la colonne qui contient le nom de fichier texte
SQLRequete := ‘SELECT leChamp from’+NomTable ;
SQLDataSet1.CommandText:=SQLRequete; // utilisation d’un TSQLDataSet
// C’est ici mon problème, comment récupérer une valeur de leChamp et l’affecter par exemple dans une variable NomFich pour pouvoir faire après
RichEdit1.Lines.LoadFromFile(NomFich) ;
…..
En tant que débutant, c’est le code que j’ai fait mais si quelqu’un puisse me suggérer une autre solution, je suis preneur.
Cordialement,

6 réponses

Bjr,
les chiffres non lisibles viennent de mon copier-coller via Word (que je ne comprend pas )et correspond à apostrophe
veuillez m'en excuser
Merci
0
Bjr ;
Je viens de commencer un petit programme en delphi XE2 qui utilise une base de données Mysql.
Mon problème est le suivant :
Dans ma table Mysql, j’ai un champ qui contient un nom de fichier texte formaté.
Par la suite, je voudrais afficher les valeurs de ce champ dans un TrichEdit mais je ne trouve pas la solution.
Je ne sais pas si je m’explique bien mais je vais essayer de le montrer avec les codes suivant :

Var
NomTable : Tstring ;
SQLRequete: Tstring;

// LeTable est la table Mysql
NomTable := ‘LeTable.frm ‘;

// leChamp est la colonne qui contient le nom de fichier texte
SQLRequete := ‘SELECT leChamp from’+NomTable ;

SQLDataSet1.CommandText:=SQLRequete; // utilisation d’un TSQLDataSet

// C’est ici mon problème, comment récupérer une valeur de leChamp et l’affecter par exemple dans une variable
NomFich pour pouvoir faire après

RichEdit1.Lines.LoadFromFile(NomFich) ;

En tant que débutant, c’est le code que j’ai fait mais si quelqu’un puisse me suggérer une autre solution, je suis preneur.
Cordialement,
0
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
8 nov. 2012 à 10:11
RichEdit1.Lines.Text := SQLDataSet1.FieldByName('leChamp').AsString;


Composants Cindy pour Delphi
Faites une donation.
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
8 nov. 2012 à 14:26
Bonjour,

je pense qu'une listbox semble plus adaptée à ton problème, dans l'hypothèse
où plusieurs noms de fichiers seront stockés dans ce champ.

procedure TForm1.ReadFileName;
begin
  MaTable.Close;
  Matable.Open;
  MaTable.First;
  while not MaTable.Eof do
  begin
    ListBox1.Items.Add(MaTableMonChamp.AsString);
    MaTable.Next;
  end;
end;



Ensuite, tu peux imaginer une suite
en sélectionnant le fichier dans cette liste et sur clic-droit ou un double-clic lancer l'ouverture de ce dernier.

cantador
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour,
Je vous remercie tous ,
Je pense que je pourrais à mon tour aider les autres mais il faut patienter un peu,
Je suis encore en plein aprentissage de Delphi+Mysql.

Merci
0
Bonjour à tous,
Quand je lis vos solutions, je me rend compte que mon problème se trouve encore à niveau plus antérieur. J'explique:
dans les codes de cantador, je crois comprendre que MaTable indique la table dans ma base de données MySql, alors comment on déclare MaTable dans delphi et comment le relier avec la table que j'ai créée dans Mysql et que je vais nommer par exemple MaTableSQL.
Lorsque je comprends ce mecanisme, je pense que je pourrais finalement 'jouer' avec ma table et ses enregistrements.

Je signale que ma connexion avec la base de données fonctionne déjà. j'ai utilisé ODBC MySql

Merci
MlamXE2
0
Rejoignez-nous