Bonjour,
Voilà il m'arrive un truc vraiment tordu
j'ai realisé une appli .Net qui utilise un CommandBuilder pour faire les MAJ en base de donnée (MySQL 4.0).
Grosso modo, commandbuilder permet de générer les requête INSERT, UPDATE et DELETE à partir d'un SELECT *.
Je fais le dev sur mon "bon vieu poste de dev" où le driver MyODBC à bien qq année (Version 3.51.11).
Tout ce passe bien, Select, Insert, Delete, Update...
Et puis je change de poste, j'installe "tout-bien-comme-y-faut", je mets la dernière version de MyODBC (3.51.23), je reprend mon dev et paf !
Quand je veux mettre à jour la base j'ai droit à une jolie exception :
La génération SQL dynamique de UpdateCommand n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de colonne clé.
J'ai donc bidouillé le PC pour remettre l'ancienne version (3.51.11) et miracle ça passe...
J'ai fait des tests sur 4 PC, et avec plusieurs versions du drivers (3.51.9, 3.51.17) et j'ai toujours le même problème... bien sur même problème avec la release de l'appli.
J'ai aussi essayé avec le connecteur MySQL-Connector.Net 5.1.5 fournir sur le site de MySQL... Seule le libelle de l'exception change, mais le pb est bien le même :
La génération SQL dynamique n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de table de base.
Par contre ça marche avec la version 1.0 du MySQL-Connector.Net...
Arrghhh
Si qq à une piste pour que je puisse travailler avec la dernière version de MyODBC ou MySQL-Connector.Net je suis preneur...
Ne sachant pas trop où poster le pb, je l'ai aussi mplacé dans le forum .Net...
merci
Partager