Enregistrement Access

Résolu
cs_hustler Messages postés 85 Date d'inscription mercredi 17 septembre 2003 Statut Membre Dernière intervention 20 mars 2012 - 10 mars 2009 à 18:00
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 11 mars 2009 à 22:09
Bonjour a toute la communauté !!!

lors d'un enregistrement de VB5 sur une base access j'utilise le code ci-dessous

        Dim db As Database
        Dim Req As Recordset


        Set db = OpenDatabase(MyBase)
        Set Req = db.OpenRecordset("SELECT * FROM Reunion", dbOpenDynaset)
               
        Req.AddNew
        Req.Fields("Reu-clef") = Label1.Caption
        Req.Fields("Reu-date") = Text1.Text
        Req.Fields("Reu-lib") = Text2.Text
        Req.Fields("Reu-1") = Text3.Text
        Req.Fields("Reu-2") = Text4.Text
        Req.Fields("Reu-3") = Text5.Text
        Req.Update

et j'ai une erreur 13 type incompatible sur la ligne

        Set Req = db.OpenRecordset("SELECT * FROM Reunion", dbOpenDynaset)

pouvez vous m'aider a trouver mon erreur

Merci d'avance pour votre aide

6 réponses

cs_labk92 Messages postés 12 Date d'inscription dimanche 16 mars 2003 Statut Membre Dernière intervention 29 juillet 2010
10 mars 2009 à 18:48
Bonjour,

Pourquoi ne ferais-tu pas directement une requete sql "INSERT INTO ?"

ConnDB = nom de ta connexion à ta base de données
Req = Nom de ta requete

Ce qui donne :

'Déclarations
Dim ConnDB As New ADODB.Connection
Dim Req As New ADODB.Recordset

'Connection à ta base de données
ConnDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;data source= c:\test.mdb"
ConnDB.Open

'Enregistrement de tes données
Set Req = ConnDB.Execute("INSERT INTO REUNION (Reu-clef,Reu-date,Reu-lib,Reu-1,Reu-2,Reu-3)VALUES('" & Label1.Caption & "','" & Text1.Text & "','" & Text2.Text & "','" & Text3.Text & "', '" & Text4.Text & "', '" & Text5.Text & "'")

Dis moi si cela fonctionne

Oublier, c'est trahir...(Génocide Arménien 1915)
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
10 mars 2009 à 21:52
Bonjour,

Il s'agit de DAO avec VB5 (et pas 2005 j'espère) (je n'ai utilisé VB qu'à partir de VB6).

As-tu d'autres ouvertures de Recordset qui fonctionnent (ou pas) ?
Si ces entrées fonctionne, compares-les.

Le peu que je connais de DAO ma semble correct, revérifies les paramètres.

http://nhen0039.chez-alice.fr/index.php
0
cs_hustler Messages postés 85 Date d'inscription mercredi 17 septembre 2003 Statut Membre Dernière intervention 20 mars 2012
11 mars 2009 à 13:32
Tout d'abord merci beaucoup pour votre aide
et excusez moi pour le retard de ma reponse mais je n'ai pas eu le temps plus tot

donc j'ai utilisé le code de labk92 et il fonctionne tres bien
cependant j'ai une petite question

en fait une fois l'enregistrement validé je ne le vois pas de suite (j'ai essayé dans un DBgrid et dans un MSFlexGrid)
si je sort du form et que je re rentre alors je vois bien l'enregistrement
Est ce du a une vitesse d'enregistrement dans la base ?

pourtant je fais bien un refresh de mon data !!!

Si vous avez une idée je suis prenneur

Merci d'avance !!!
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
11 mars 2009 à 13:57
Bonjour,

Quand tu dis rafraichir, tu dis uniquement rafraichir le controle ou réinterroger la bdd ?

http://nhen0039.chez-alice.fr/index.php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_hustler Messages postés 85 Date d'inscription mercredi 17 septembre 2003 Statut Membre Dernière intervention 20 mars 2012
11 mars 2009 à 14:38
Quelle rapidité
je fais ça comme code :

    Data1.DatabaseName = MyBase
       
    requete1 = "SELECT [Reu-clef], [Reu-date], [Reu-lib], [Reu-1], [Reu-2]"
    requete1 = requete1 & " FROM Reunion "
    requete1 = requete1 & " ORDER BY [Reu-date]"


    Data1.RecordSource = requete1
    Data1.Refresh

si je le fais immediatement j'ai rien
si j'attends 2 ou 3 secs ça marche bien

c grave docteur ?
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
11 mars 2009 à 22:09
Bonjour,

Je ne l'ai jamais vu, mais il semble que c'est "normal".

http://nhen0039.chez-alice.fr/index.php
0
Rejoignez-nous