cs_manu30
Messages postés3Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention23 février 2011
-
28 avril 2008 à 15:26
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
29 avril 2008 à 08:49
Bonjour,
Je realise un petit progrmme sous Visual Basic 2008 express edition avec une base de données access
Dans ce programme je donne la possibilité à l'utilisateur de supprimer un enregistrement dans la table de la base de données.
voici le programme:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim oDb As DAO.Database
Dim oRst As DAO.Recordset
Dim currentdb As Database
'Instancie la base de données
oDb = currentdb
'Ouvre le curseur
oRst = oDb.OpenRecordset("SELECT * FROM Clients WHERE NumClient=2")
'Parcours le jeu d'enregistrement jusqu'à la fin
While Not oRst.EOF
'Supprime l'enregistrement
oRst.Delete()
'Passe au suivant
oRst.MoveNext()
End While
'Libération des objets
oRst.Close()
oDb.Close()
oRst = Nothing
oDb = Nothing
End Sub
End Class
J'ai verifier que la référence Microsoft DAO 3.6 Object library à bien été ajoutée.
Une erreur m'indique que "currentdb" n'est pas déclaré.
Pouvez vous me dire pourquoi et comment y remédier?
manhino
Messages postés63Date d'inscriptionjeudi 30 mars 2006StatutMembreDernière intervention 7 août 2008 28 avril 2008 à 15:55
bonjour,
je pense que sa devrai marcher comme cela
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim oDb As DAO.Database
Dim oRst As DAO.Recordset
Dim currentdb As Database
'Instancie la base de données
'oDb = currentdb
'Ouvre le curseur
oRst = CurrentDb.OpenRecordset("SELECT * FROM Clients WHERE NumClient=2")
'Parcours le jeu d'enregistrement jusqu'à la fin
While Not oRst.EOF
'Supprime l'enregistrement
oRst.Delete()
'Passe au suivant
oRst.MoveNext()
End While
'Libération des objets
oRst.Close()
oDb.Close()
oRst = Nothing
oDb = Nothing
End Sub
End Class
cs_manu30
Messages postés3Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention23 février 2011 28 avril 2008 à 19:20
Merci pour ta reponse mais j'ai ajouté le code que tu m'as dit et voici le resultat
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim oDb As DAO.Database
Dim oRst As DAO.Recordset
Dim currentdb As Database
'Instancie la base de données
'oDb = currentdb
'Ouvre le curseur
oRst = currentdb.OpenRecordset("SELECT * FROM Clients WHERE NumClient=2")
'Parcours le jeu d'enregistrement jusqu'à la fin
While Not oRst.EOF
'Supprime l'enregistrement
oRst.Delete()
'Passe au suivant
oRst.MoveNext()
End While
'Libération des objets
oRst.Close()
oDb.Close()
oRst = Nothing
oDb = Nothing
End Sub
Avertissement 1 La variable 'currentdb' est utilisée avant qu'une valeur ne lui ait été assignée. Une exception de référence null peut se produire au moment de l'exécution.==> c'est exactement ce qui se passe lors du lancement du debeugage