salut,
il me semble avoir confondu avec l'api mysql
si tu utilises les composants DBExpress, enleve l'include mysql.h
si ce la peut t'aider :
http://www.developpez.net/forums/vie...tsqlconnection
salut,
il me semble avoir confondu avec l'api mysql
si tu utilises les composants DBExpress, enleve l'include mysql.h
si ce la peut t'aider :
http://www.developpez.net/forums/vie...tsqlconnection
je v tester
je te remercie pour toute l aide amenée jusqu ici
apperemment avec les fichiers specifiques à borland , ca fonctionne
parcontre peux tu me decrire la maniere de formuler une requete avec borland depuis l initialisation de la connection jusqu au traitement sur le form ?
prenons un exemple tout simple
user cedni
pass 123456
port 678
serveur www.mabase.fr
base mabase
disons que je veux recuperer toutes les valeurs du champ nom par ordre croissant où le champ genre = homme et les stocker dans un memo
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 CREATE TABLE test ( nom text NOT NULL, prenom text NOT NULL, age int(2) NOT NULL default '0', ville int(5) NOT NULL default '0', genre text NOT NULL ) TYPE=MyISAM; # # Contenu de la table `test` # INSERT INTO test VALUES ('gub','nico',27,34800,'homme'); INSERT INTO test VALUES ('nieb','ced',29,62950,'homme'); INSERT INTO test VALUES ('rata','stan',25,62800,'homme'); INSERT INTO test VALUES ('taillez','ludi',28,62800,'femme');
salut
procède par étape:
- met ton TSQLConnection avec ces propriétés et passe le a Active
- si sa marche met un TSQLQuery et écrit ta requête dedans plus les propriétés nécessaires
- met un Datsource et essai de récupérer té resultat (au dépar fé juste un echo de tes résulta pour le memo fodra voir après)
si t as des problèmes indique les
(je précise que j'ai jamais fait de connexion distante don sur ce pt je pourrais pas t'aider)
bon courage
il y a meme pas de tuto en anglais sur le net
c obsolete b6 ou quoi ?
copier dans repertoire
libmySQL.dll et libmySQL.lib ( ajoutée au projet )
modif un fichier sql.h recuperé dans une version windows de sql
Dans le fichier d'en-tête mySQL.h, j'ai du effectuer la modification suivante au niveau de la ligne 34:
#ifdef __LCC__
#include <winsock.h> /* For windows */
#endif
devient
#if ( defined(__LCC__) || defined(__WIN__) )
#include <winsock.h> /* For windows */
#endif
( du tuto de LFE , http://lfe.developpez.com/BCBmySQL/ )
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125 //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #define __WIN__ #include "mysql.h" #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::testconnectionClick(TObject *Sender) { MYSQL *mySQL; mySQL = mysql_init(NULL); if (!mysql_real_connect(mySQL, "www.freesql.org", "cednieb", "123456", "cedtest",3306, NULL, 0)) { Memo1->Clear(); Memo1->Lines->Add("echec"); // la connection a échoué } else { Memo1->Clear(); Memo1->Lines->Add("ok"); // la connection a réussi } mysql_close(mySQL); } //--------------------------------------------------------------------------- void __fastcall TForm1::listertableClick(TObject *Sender) { MYSQL *mySQL; mySQL = mysql_init(NULL); if (!mysql_real_connect(mySQL, "www.freesql.org", "cednieb", "123456", "cedtest",3306, NULL, 0)) { Memo1->Clear(); Memo1->Lines->Add("echec"); // la connection a échoué } else { Memo1->Clear(); Memo1->Lines->Add("ok"); // la connection a réussi } MYSQL_ROW myROW; MYSQL_RES *myRES; AnsiString aStr; myRES = mysql_list_tables(mySQL, NULL); if (myRES) { for(unsigned int i = 0; i < myRES->row_count; i++) { myROW = mysql_fetch_row(myRES); for(unsigned int j = 0; j < mysql_num_fields(myRES); j++) { aStr.sprintf("%s", myROW[j]); ListBox1->Items->Add(aStr); } } mysql_free_result(myRES); } mysql_close(mySQL); } //--------------------------------------------------------------------------- void __fastcall TForm1::listerdonneesClick(TObject *Sender) { MYSQL *mySQL; mySQL = mysql_init(NULL); if (!mysql_real_connect(mySQL, "www.freesql.org", "cednieb", "123456", "cedtest",3306, NULL, 0)) { Memo1->Clear(); Memo1->Lines->Add("echec"); // la connection a échoué } else { Memo1->Clear(); Memo1->Lines->Add("ok"); // la connection a réussi } MYSQL_ROW myROW; MYSQL_RES *myRES; AnsiString aStr; if (!mysql_query(mySQL, "select * from test")) { myRES = mysql_store_result(mySQL); if (myRES) { for(unsigned int i = 0; i < myRES->row_count; i++) { myROW = mysql_fetch_row(myRES); for(unsigned int j = 0; j < mysql_num_fields(myRES); j++) { aStr = myROW[j]; ListBox1->Items->Add(aStr); } } mysql_free_result(myRES); } } mysql_close(mySQL); } //---------------------------------------------------------------------------
Là tout fonctionne
parcontre comment faire dans ce cas precis pour definir le serveur une fois pour toute ?
merci à toi , c est vraiment sympa de m avoir aidé
donc finalement tu as utilisé l'API. c'est vrai que la il y a au moins un exemple.
par contre je crois que tu seras obligé de définir la connexion à chaque fois.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager