Connections à une base de donnée MySql

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Connections à une base de donnée MySql

Message par falsam »

(Dernière mise à jour : 7 Octobre 2010)

Pure Basic ne gérant pas l’accès natif à MySql , Je vous fais partager mon fichier include que vous pouvez télécharger avec deux exemples en cliquant sur ce lien LibMySq.zip

Cet include contient les procédures suivantes :
MySqlInit() - Initialiser la connexion à MySQL
MySqlConnect(SqlHandle.l, SqlHost.s, SqlUser.s, SqlPassWord.s, SqlDatabase.s, SqlPort.l) - Connection à la base de données
MySqlQuery(MySqlhandle.l, MySqlQuery.s) - Exécution d'une requête
MySqlGetRowCount(MySqlQueryResult.l) - Obtenir le nombre de lignes dans le résultat la requête
MySqlGetColCount(MySqlQueryResult.l) - Obtenir le nombre de colonne dans le résultat de la requête
MySqlNextQueryRow(MySqlResult.l) - Obtenir la ligne suivante dans le resultat de la requête
MySqlNextQueryCol(NumCol.l, Option.l) - Obtenir la colonne suivante dans le résultat de la requête
Option peut prendre les options suivantes en fonction du jeu de caractére de la table.
#PB_Ascii : Jeu de caractére ASCII
#PB_UTF8 : jeu de caractére UTF-8
#PB_Unicode : Jeu de caractére Unicode

MySqlQueryFree(MySqlResult) - Libère la mémoire utilisée par un jeu de résultats
MySqlClose(SqlHandle.l) - Fermer la connexion MySql

MySqlToListConGadget(MySqlhandle.l, MySqlQuery.s, Gadget.l, Option.l) - Transfére le résultat d'une requete dans une ListConGadget.
Option peut prendre les options suivantes en fonction du jeu de caractére de la table.
#PB_Ascii : Jeu de caractére ASCII
#PB_UTF8 : jeu de caractére UTF-8
#PB_Unicode : Jeu de caractére Unicode


En fonction de votre compilateur, utilisez les connectors adéquates que vous trouverez sur le site de mysql.fr en cliquant sur ce lien

Pour windows:
Windows (x86, 32-bit), ZIP Archive
(mysql-connector-c-noinstall-6.0.2-win32.zip)

Windows (x86, 64-bit), ZIP Archive
(mysql-connector-c-noinstall-6.0.2-winx64.zip)
Dernière modification par falsam le jeu. 07/oct./2010 22:36, modifié 4 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Connections à une base de donnée MySql

Message par Backup »

bien cool ta contribution :)
Merci
Warkering
Messages : 808
Inscription : ven. 08/janv./2010 1:14
Localisation : Québec, Canada

Re: Connections à une base de donnée MySql

Message par Warkering »

Merciiiii! :D
stombretrooper
Messages : 117
Inscription : dim. 21/déc./2008 18:39

Re: Connections à une base de donnée MySql

Message par stombretrooper »

Je vais faire mon inculte, j'arrive pas à faire fonctionner ton code sur la version 4.51 de purebasic dédié au processeur x64. Et sa marche quand je compile sous la version 4.51 x86. C'est du à quoi ? Comment je peux résoudre le problème ?
http://www.purebasicstreet.com/ - Site dédié à purebasic.
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Connections à une base de donnée MySql

Message par falsam »

En installant les versions 64bits de LibMySql.ddl et LibMySql.lib (Connector/C Windows (x86, 64-bit), ZIP Archive) que vous pouvez télécharger sur le site de mysql.fr ou bien en cliquant sur ce lien direct
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Warkering
Messages : 808
Inscription : ven. 08/janv./2010 1:14
Localisation : Québec, Canada

Re: Connections à une base de donnée MySql

Message par Warkering »

C'est exactement ce que j'ai fait, cela fonctionne de cette façon.
Il faudrait peut-être rajouté une note au premier message. :wink:
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Connections à une base de donnée MySql

Message par falsam »

Ajout d'une nouvelle fonctionnalité.


MySqlToListConGadget(MySqlhandle.l, MySqlQuery.s, Gadget.l, Option.l) - Transfére le résultat d'une requete dans une ListConGadget.
Option peut prendre les options suivantes en fonction du jeu de caractére de la table.
#PB_Ascii : Jeu de caractére ASCII
#PB_UTF8 : jeu de caractére UTF-8
#PB_Unicode : Jeu de caractére Unicode

Par contre j'ai un problème : bien que l'include fonctionne correctement, la library généré ne fonctionne pas. Le source est disponible sur ce lien LibMySq.zip

PS : Le post de départ est modifié
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
fab
Messages : 24
Inscription : jeu. 07/avr./2011 21:07
Localisation : Limoux, France

Re: Connections à une base de donnée MySql

Message par fab »

Bonjour,

Je vais me faire taper sur les doigts pour ce déterrage de topic mais bon je le fait quand même on verra bien :)

Je n'arrive pas à faire fonctionner ton fichier sous mac, avec la librairie .lib le compilateur me dis mauvaise architecture (normal c'est pour windows) et quand je le fait avec le fichier pour mac (.dylib apparemment) ça plante au lancement de l'application (la compilation elle s'effectue sans erreur).
Aurais tu une solution pour mon cas?

Merci
Mac Os X snow léopard, PureBasic 4.51
Répondre