IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6]ADO Suppression dans un RecordSet


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 3
    Points
    3
    Par défaut [VB6]ADO Suppression dans un RecordSet
    Bonjour tout le monde

    Voici le bout de code qui me pose problème :

    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
    27
    28
    29
    30
    31
    32
     
    Private Sub Form_Load()
    Dim rs As ADODB.Recordset
     
    Set rs = New Recordset
    rs.CursorType = adOpenDynamic
    rs.CursorLocation = adUseClient
    rs.Fields.Append "cd_ent", adVarChar, 5
    rs.Open
     
    rs.AddNew
    rs!cd_ent = "11111"
    rs.AddNew
    rs!cd_ent = "22222"
    rs.AddNew
    rs!cd_ent = "33333"
    rs.AddNew
    rs!cd_ent = "44444"
    rs.Update
     
    rs.MoveFirst
    While Not rs.EOF
      Debug.Print rs!cd_ent
      rs.MoveNext
    Wend
     
    If Not (rs Is Nothing) Then rs.Delete (adAffectAll)
     
    rs.Close
     
    End
    End Sub
    Impossible de supprimer les enregistrements du RecordSet : VB (6) me donne l'erreur 3219 : "Opération is not allowed in this context".

    Ai je oublié quelque chose ?

    Merci de prendre un peu de temps pour me répondre

  2. #2
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 80
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    Bonjour (et bienvenue)

    Tout d'abord, vérifie tes tag code.

    Pour la méthode Delete, je ne pense pas que le paramètre adAffectAll soit utilisable. C'est soit adAffectCurrent (par défaut), soit adAffectGroup (pour les enregistrement filtrés).

  3. #3
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci tout d'abord de ta réponse

    Pour les tag code, il va falloir que je progresse, pour les smiles aussi :-)

    J'ai essayé toutes les méthodes (j'ai parcouru le web avant de me décider à appeler au secours!), mais aucune n'est satisfaisante :
    adAffectGroup me donne la même erreur
    adAffectCurrent ne me supprime que l'enregistrement courant

    Tu vas me dire qu'une boucle résoudrait mon problème, mais bon, je préfère "faire ca bien" !

  4. #4
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 80
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    Citation Envoyé par teurnal
    J'ai essayé toutes les méthodes (j'ai parcouru le web avant de me décider à appeler au secours!), mais aucune n'est satisfaisante :
    adAffectGroup me donne la même erreur
    adAffectCurrent ne me supprime que l'enregistrement courant
    Tu vas me dire qu'une boucle résoudrait mon problème, mais bon, je préfère "faire ca bien" !
    Pour adAffectGroup, tu as bien fait un filtre des éléments à supprimer? Autrement, la solution de la boucle avec le paramètre par défaut adAffectCurent me semble la solution ad hoc. Et une boucle, ce n'est pas "mal"

  5. #5
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Oui, je crois que je fais faire une boucle, tant pis pour l'apect "travaillé" du code

    Merci vraiment pour ton aide en tout cas

  6. #6
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 80
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    De rienj. Il ne te reste plus qu'à mettre la balise [Résolu] ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ADO: Naviguer dans un recordset a l'aide de sql
    Par jacko842 dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 04/05/2009, 19h07
  2. Problème de taille après suppression de lignes dans un recordset...
    Par nikko_54 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 19/04/2006, 22h18
  3. [VB6] ADO Recordset et Image
    Par Parrain dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 09/02/2006, 15h39
  4. [VB6] Fichier csv dans un recordset
    Par Mymi dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/01/2006, 22h19
  5. [VB6] Sauvegarder la position dans un Recordset
    Par inotna2099 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 29/04/2003, 17h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo