Supprimer un enregistrement dans une bd access avec DAO/Access

beegeezzz
Messages postés
152
Date d'inscription
mardi 4 novembre 2008
Statut
Membre
Dernière intervention
10 avril 2017
- 29 déc. 2008 à 16:25
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
- 30 déc. 2008 à 09:00
Bonjour tout le monde,


J'aimerais supprimer un enregistrement de ma base de données.


Pour cela, j'utilise ce code :

Code :
PrivateSub commandSupprimerUneRecette_Click(Index AsInteger)
Dim ASupprimer, Prochain AsVariant
Dim rsSuppression As Recordset
Set rsSuppression = BDOuvrirTable("SELECT * FROM recette")
ASupprimer = rsSuppression.Bookmark
rsSuppression.MoveNext
Prochain = rsSuppression.Bookmark
rsSuppression.Bookmark = ASupprimer
rsSuppression.Delete
rsSuppression.Bookmark = Prochain
 
RemplirListeRecettes 'j'appelle RemplirListeRecettes pour faire un refresh de la liste des recettes

EndSub

Le problème, c'est que rien ne s'efface.


Voici le code pour l'ouverture de la table :

Code :
PublicFunction BDOuvrirTable(ByVal NomTable AsString, OptionalByVal LectureSeule AsBoolean = False)As Recordset
Set BDOuvrirTable = BD.OpenRecordset(NomTable, IIf(LectureSeule, dbOpenSnapshot, dbOpenDynaset))
EndFunction

Je mets bien sûr "lecture seule" à faux (en ne passant aucun paramètre, il prend par défaut false).


J'utilise DAO avec VB6 et Access.


Sauriez-vous aussi me dire si il est possible dans la fenêtre d'exécution (déboguage) de connaître la valeur de BDOuvrirTable ?


Merci d'avance pour l'aide.


beegees

2 réponses

LIBRE_MAX
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
29 déc. 2008 à 17:29
Bonjour,


Pourquoi ne pas y aller franchement ?


De toute façon ,dans le cas de Delete ton recordset doit être Dynamique.


Set rsSuppression== BD.OpenRecordset("SELECT * FROM recette",dbOpenDynaset)


Mais un recordset qui est égal à un autre,  jamais vu !








 





<hr />




[] Ce qui va sans dire. va mieux en le disant.


<hr />
0