PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → [WD26] MariaDB 10 et MariaDB 5,5
[WD26] MariaDB 10 et MariaDB 5,5
Débuté par dj5f, 29 sep. 2021 13:24 - 10 réponses
Membre enregistré
151 messages
Popularité : +1 (3 votes)
Posté le 29 septembre 2021 - 13:24
Mon projet utilise une base MySql 5.5.
Le client a migré ses données sur un serveur OVH qui utilise MariaDB 10.
J'ai installé l'accès natif MariaDB pour Windev.
J'ai placé libmariadb.dll dans les dossiers.
J'ai créé une connexion pour MariaDB.
Je clique sur le bouton Tester et on dit "Connexion à la base réussie".

1) J'essaie d'ajouter une table du serveur : aucune table affichée dans la fenêtre "Importation de fichiers de données".

2) Je crée une fenêtre avec un champ table lié sur une table du serveur MySql. Les données s'affichent.

3) Je copie la table utilisée sur le serveur MariaDB. Hors WinDev je peux tester que les données sont bien présentes dans la table.

4) Dans l'analyse, j'associe la table MariaDB à la fenêtre précédente. Rien ne s'affiche.

Je remarque que l'aide WinDev dit :
Couche cliente de MariaDB (fichier LibMariaDB.DLL) :
Couche Cliente 32 bits pour utiliser le Connecteur Natif MariaDB 32 bits (version 3.x à 5.x testée).

J'ai installé MariaDB 5.5 pour obtenir le DLL.
Le DLL sous le répertoire lib est "libmysql.dll".

Par hasard j'ai renommé libmysql.dll pour libmariadb.dll et les données s'affichent.

Je dois maintenant faire d'autres tests.

Tout ça est très étonnant. MariaDB est de plus en plus utilisé, pourquoi ne pas mettre à jour le connecteur?

--
________________________
Denis Jobin
Saint-Hyacinthe, Québec
Posté le 29 septembre 2021 - 15:06
bonjour le Québec

le connecteur fonctionne bien je l'utilise avec un Windev 25 et un mariadb 10.x

Première question : ta version Windev (pour le mode test) est une version 32 bits ou 64 bits ?

Deuxième question : ton exécutable sera compilé en 32 bits ou 64 bits ?

Troisième question : tu as installé quelle version de mariadb : la version 32 bits ou 64 bits ?

1) Installe la version 10.x (32 bits ou 64 bits) de mariadb pour récupérer la libmariadb.dll qui convient (n'utilise pas celle de mariadb 5). la libmariadb est à décorréler du connecteur windev.
Posté le 29 septembre 2021 - 15:38
bonjour le Québec

le connecteur fonctionne bien je l'utilise avec un Windev 25 et un mariadb
10.x

Première question : ta version Windev (pour le mode test) est une version 32
bits ou 64 bits ?

Deuxième question : ton exécutable sera compilé en 32 bits ou 64 bits ?

Troisième question : tu as installé quelle version de mariadb : la version 32
bits ou 64 bits ?

1) Installe la version 10.x (32 bits ou 64 bits) de mariadb pour récupérer
la libmariadb.dll qui convient (n'utilise pas celle de mariadb 5). la
libmariadb est à décorréler du connecteur windev.


Bonjour,
nous avons utilisé du mariadb 10.4.20 sur des vm à la place de notre
mysql 5.6 (c'était dans le xamp)

Et de mémoire nous avons gardé les libmysql.dll.
Et cela marche bien (à part des règlages que l'on a du faire sur des
variables système car cela plantait quand on écrivait des valeurs trop
grandes, cela ne tronquait pas automatiquement)

Mais une fois réglé cela, tous nos sites et appli windev fonctionnaient
pareil (nous utilisons les accès alternatifs, pas l'accès natif mais je
crois que cela marche aussi). Idem avec les frontaux sql (à part mysql
workbench)

Mais la question que je me pose est y'a-t-il un intérêt à Mariadb
plutôt qu'à mysql ?

Si vous pouviez me donner des infos là dessus ... ce serait sympa

Par exemple, la seule chose que j'envie à HFSQL est la possibilité de
crypter toute la table sans rien changer au code. Si on pouvait avoir
la même chose en mysql ...

--
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Posté le 29 septembre 2021 - 16:52
pour moi , il y a quelques différences :

Mariadb est entièrement en licence GPL
le moteur OQGraph (parce que ca m'est utile)
Membre enregistré
151 messages
Popularité : +1 (3 votes)
Posté le 29 septembre 2021 - 17:16
Merci pour les réponses.

Voici mes commentaires sur vos questions :
Roumegou
-> Mais la question que je me pose est y'a-t-il un intérêt à Mariadb plutôt qu'à mysql ?
Je n'ai pas le choix. Comme mentionné, c'est le client qui a changé de serveur et leur équipe informatique a choisi MariaDB.

Pour les autres questions :
devlgr
Première question : ta version Windev (pour le mode test) est une version 32 bits ou 64 bits ?
64 bits

Deuxième question : ton exécutable sera compilé en 32 bits ou 64 bits ?
32 bits

Troisième question : tu as installé quelle version de mariadb : la version 32 bits ou 64 bits ?
Les deux
Membre enregistré
57 messages
Popularité : +9 (11 votes)
Posté le 29 septembre 2021 - 17:32
Bonjour

Il y a un billet sur le blog du support qui fait la "synthèse" sur les mélanges liés au 32 / 64 bits :
https://blogs.pcsoft.fr/fr/connexion-base-donnees-analyse-projet-importance-mode-compilation-32-64-bits-editeur-windev-webdev/281474976710861/read.awp

Dans votre configuration il faut bien avoir un client 64 bits de la base de données, pour l'éditeur puisqu'il est installé en 64 bits.
Par contre il faut bien avoir également le client en 32 bits, pour le GO depuis une configuration de projet en 32 bits (ou l'exécutable compilé en 32 bits).

Et avec certaines bases qui ont les DLL de leur client qui ont le même nom en 32 et 64 bits ... c'est vite fait de croiser les skis !

Pour le poste de dev, (cf billet) bien mettre le client de base de données :
- en version 32 bits dans \Programmes\Framework\Win32x86\
- en version 64 bits dans \Programmes\Framework\Win64x86\
>> là au moins l'éditeur et le test GO chargent le bon client à coup sûr !

Au sujet du passage de MySQL à MariaDB, c'est généralement la différence de coût qui motive le changement (MySQL = Oracle) !

--
A+
Dev-OC
Membre enregistré
151 messages
Popularité : +1 (3 votes)
Posté le 29 septembre 2021 - 17:49
J'ai réinstallé les deux versions MariaDB (32 et 64) sur mon poste.

Ce que je trouve étrange, c'est la dimension très faible du mariadb.DLL, soit 255 Ko (32 bits) et 304 Ko (64 bits).

- en version 32 bits dans \Programmes\Framework\Win32x86\, avec version 10
- en version 64 bits dans \Programmes\Framework\Win64x86\, version 10

Les donnée ne s'affichent pas.

- en version 32 bits dans \Programmes\Framework\Win32x86\, avec libmysql.dll renommé libmaradb.dll
- en version 64 bits dans \Programmes\Framework\Win64x86\, version 10

Les donnée s'affichent.
Posté le 30 septembre 2021 - 08:00
bonjour,
Dans ton répertoire exe pour test sous windev ,
1) tu copies la libmariadb.dll version 64 bits et tu effectues ton test pour voir si les données s'affichent
2) puis tu refais un deuxième test après avoir copié la dll version 32 bits

les 2 dll ont effectivement une taille < à 400 Ko
Membre enregistré
190 messages
Popularité : +12 (12 votes)
Posté le 01 octobre 2021 - 14:31
Bonjour

Pour ma part j'utilise MariaDb 10.3.12 sur un projet avec windev sans souci mais, sur ce projet sans analyse , en SQLExec.

--
Côme, Clairinfo
Membre enregistré
190 messages
Popularité : +12 (12 votes)
Posté le 01 octobre 2021 - 15:13
Désolé pour ma 1ère réponse qui n'apportait rien
De mon côté j'ai utilisé un Wamp serveur pour disposer rapidement d'un serveur MySql et d'un serveur MariaDB 10.xxx en 64bit bit.

J'ai copié la DLL libmariadb.dll 32 bit (version 3.0.0.7) trouvée dans le répertoire bin d"un MariaDb 32 bit (sans doute issu d'un package wamp serveur 32 Bit) dans le répertoire de l'exe en 32 bit (l'appli en 32 bit peut se connecter au serveur MariaDB en 64 bit sans problème) et celle en 64 bit trouvée dans le répertoire bin d'un MariaDb 64 bit (version 3.0.0.7) dans le répertoire de l'exe en 64 bit et dans le répertoire windev\Programmes car j'ai un windev en 64bit.

Et je n'ai pas eu de souci particulier. Effectivement les DLL sont petites.

--
Côme, Clairinfo
Membre enregistré
151 messages
Popularité : +1 (3 votes)
Posté le 01 octobre 2021 - 16:49
Problème résolu.

C’est la version de MariaDB qui posait problème .
J’avais installé au départ la version 10.6.4 de MariaDB.

Avec la version 10.5.6, les DLL fonctionnent.
Il n’y a plus de message d’erreur et les tables s'affichent dans la fenêtre "Importation de fichiers de données ».