Bonjour.
J'ai besoin d'envoyer des donnees a MySQL ou de les modifier des donnees.
Je le fais avec ADO.
Si j'ouvre un curseur cote client, lorsque je rajoute un montant, celui-ci est correctement rajoute en table.
Pour modifier les enregistrements, je suis oblige d'ouvrir un curseur cote serveur car, avec un curseur cote client, il y a de temps en temps un probleme comme quoi on ne peut pas modifier car la valeur a peut etre change etc etc.
Du coup j'ouvre un curseur cote serveur. J'arrive sans probleme a mettre a jour les donnees, le update se fait correctement.
Par contre, le montant est multiplie par 100 que ce soit en rajout de nouvel enregistrement ou en modif de champ d'un enregistrement existant.
Voici la partie de mon code :
J'ai essaye en remplacant :
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 ' Connexion ŕ base MySQL ' Crée objet Connection Set oCnMySQL = New ADODB.Connection ' Définit chaîne de connexion ' * Le provider MSDASQL (ODBC) étant celui par défaut, on peut l'omettre oCnMySQL.ConnectionString = "Provider=MSDASQL;" & _ "DSN=" & serveur & ";" & _ "UID=" & util & ";PWD=" & passe ' Ouvre la connexion oCnMySQL.Open TableM1 = "pub_facture_entete" ' Crée recordset Set rsms = New ADODB.Recordset rsms.CursorLocation = adUseServer 'Ouvre la table rsms.Open "SELECT * FROM " & TableM1, oCnMySQL, adOpenKeyset, adLockOptimistic, adCmdText rsms.AddNew rsms("Nr_societe") = 60 rsms("Nr_ID") = 91 rsms("Nr_fact") = "essai montant" rsms("TTC_fact") = 100 rsms.Update
par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3rsms.Open "SELECT * FROM " & TableM1, oCnMySQL, adOpenKeyset, adLockOptimistic, adCmdText
Mais mon programme s'est arrete sur cette ligne en indiquant qu'ODBC ne prend pas en charge.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2rsms.Open "SELECT * FROM " & TableM1, oCnMySQL, adOpenKeyset, adLockOptimistic, adCmdTable
J'ai lance manuellement un update sur la base MYSQL est le montant saisi dans la requete SQL Update, est correctement saisi dans le champ montant.
Savez-vous d'ou peut provenir le probleme ?
Merci.
Cdlt.
Partager