Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Appel au PRO/ADO

4 réponses
Avatar
JCM
Bonjour

Pouvez-vous me dire pourquoi la solution2 ne marche pas=20
alors que la solution1 fonctionne
je pr=E9f=E9re la 2 mais je ne vois pas ou est l'erreur:

'Solution1
Set ADOrs =3D CreateObject("adodb.recordset")
ADOrs.Open "Select * from AgendaJCM", "Data=20
Source=3Dc:\MapMarket\Bases\generalites.mdb;Provider=3DMicrosof
t.Jet.OLEDB.4.0", adOpenKeyset, adLockBatchOptimistic
ADOrs.AddNew
ADOrs("libelle") =3D Levenement
ADOrs.UpdateBatch adAffectAllChapters

'solution2
With ADOcn
.Provider =3D "Microsoft.Jet.OLEDB.4.0"
.ConnectionString =3D "Data Source=3D" & CheminAgenda
.CursorLocation =3D adUseClient
.Open
End With
Levenement =3D TxtEVELibelle.Text

'enregistre le nouvel evenement
Set ADOagenda =3D New ADODB.Recordset
With ADOagenda
.ActiveConnection =3D ADOcn
.CursorType =3D adOpenDynamic
.Open "Select * from " & AGDconcerne & " where date=3D'"=20
& DateEVE & "' and heure=3D'" & SelectionTranche & "'"
End With
If ADOagenda.RecordCount =3D 0 Then
ADOagenda.AddNew
ADOagenda("libelle") =3D Levenement
End If
ADOagenda.UpdateBatch adAffectAllChapters

Merci de vos r=E9ponses car je suis vraiment dans la M.....
JCM

4 réponses

Avatar
FL
Bonjour,

Vérifiez la valeur de RecordCount dans la 2ème solution. Il est fort
possible qu'elle soit à -1. Pour régler ce problème, utilisez CursorType adUseClient


"JCM" a écrit dans le message de news:
0a5f01c3d9ad$76758a10$
Bonjour

Pouvez-vous me dire pourquoi la solution2 ne marche pas
alors que la solution1 fonctionne
je préfére la 2 mais je ne vois pas ou est l'erreur:

'Solution1
Set ADOrs = CreateObject("adodb.recordset")
ADOrs.Open "Select * from AgendaJCM", "Data
Source=c:MapMarketBasesgeneralites.mdb;Provider=Microsof
t.Jet.OLEDB.4.0", adOpenKeyset, adLockBatchOptimistic
ADOrs.AddNew
ADOrs("libelle") = Levenement
ADOrs.UpdateBatch adAffectAllChapters

'solution2
With ADOcn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source=" & CheminAgenda
.CursorLocation = adUseClient
.Open
End With
Levenement = TxtEVELibelle.Text

'enregistre le nouvel evenement
Set ADOagenda = New ADODB.Recordset
With ADOagenda
.ActiveConnection = ADOcn
.CursorType = adOpenDynamic
.Open "Select * from " & AGDconcerne & " where date='"
& DateEVE & "' and heure='" & SelectionTranche & "'"
End With
If ADOagenda.RecordCount = 0 Then
ADOagenda.AddNew
ADOagenda("libelle") = Levenement
End If
ADOagenda.UpdateBatch adAffectAllChapters

Merci de vos réponses car je suis vraiment dans la M.....
JCM
Avatar
EddiGordo
Bonjour

Essaie en mettant .LockType = adLockOptimistic juste avant ton .Open

Trucs et astuces : Utiliser la syntaxe ADOAgenda!Libelle au lieu de
ADOAgenda("Libelle") est plus rapide

En espérant t'avoir aidé...


--
Enjoy !
Avatar
JCM
Merci de ta réponse

le problème se situait bien là, cela marche

Cordialement
JCM
-----Message d'origine-----
Bonjour

Essaie en mettant .LockType = adLockOptimistic juste


avant ton .Open

Trucs et astuces : Utiliser la syntaxe ADOAgenda!Libelle


au lieu de
ADOAgenda("Libelle") est plus rapide

En espérant t'avoir aidé...


--
Enjoy !

.



Avatar
JCM
Merci de ta réponse

mais la solution proposée par la précédente réponse
fonctionne
Cordialement
JCM
-----Message d'origine-----
Bonjour,

Vérifiez la valeur de RecordCount dans la 2ème solution.


Il est fort
possible qu'elle soit à -1. Pour régler ce problème,


utilisez CursorType =
adUseClient


"JCM" a écrit dans le


message de news:
0a5f01c3d9ad$76758a10$
Bonjour

Pouvez-vous me dire pourquoi la solution2 ne marche pas
alors que la solution1 fonctionne
je préfére la 2 mais je ne vois pas ou est l'erreur:

'Solution1
Set ADOrs = CreateObject("adodb.recordset")
ADOrs.Open "Select * from AgendaJCM", "Data
Source=c:MapMarketBasesgeneralites.mdb;Provider=Microso


f
t.Jet.OLEDB.4.0", adOpenKeyset, adLockBatchOptimistic
ADOrs.AddNew
ADOrs("libelle") = Levenement
ADOrs.UpdateBatch adAffectAllChapters

'solution2
With ADOcn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source=" & CheminAgenda
.CursorLocation = adUseClient
.Open
End With
Levenement = TxtEVELibelle.Text

'enregistre le nouvel evenement
Set ADOagenda = New ADODB.Recordset
With ADOagenda
.ActiveConnection = ADOcn
.CursorType = adOpenDynamic
.Open "Select * from " & AGDconcerne & " where date='"
& DateEVE & "' and heure='" & SelectionTranche & "'"
End With
If ADOagenda.RecordCount = 0 Then
ADOagenda.AddNew
ADOagenda("libelle") = Levenement
End If
ADOagenda.UpdateBatch adAffectAllChapters

Merci de vos réponses car je suis vraiment dans la M.....
JCM


.