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 :

suppresion des enregistrements


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 49
    Points
    49
    Par défaut suppresion des enregistrements
    Bonjour,

    Je suis actuellement en stage et je développe une application avec vb6. En cliquant sur un bouton de commande je veux supprimer des enregistrements de ma table selon les valeurs qui existent dans un tableau.
    Je sais pas si je dois utiliser un record set ou la table.

    j'ai essayé ce code mais rien ne change dans ma table


    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
     
     
    Private Sub cmd_maj_Click()
    Set maj = New ADODB.Recordset
    maj.Open " select * from copie ", cnx, adOpenKeyset, adLockBatchOptimistic
    For i = 0 To lig - 1
       If montableau(8, i) = "suppression citerne" Then
            maj.MoveFirst
     
            Do Until maj.EOF
                num = maj.Fields("numero")
                If (num = montableau(0, i)) Then
                    maj.Delete
                End If
            maj.MoveNext
            Loop
    End If
    Next i
    maj.Close
     
    End Sub


    Je vous remercie.

  2. #2
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 156
    Points : 110
    Points
    110
    Par défaut
    en théorie, tu dois juste effacer les enregistrements et recharger le tableau de VB, c'est à dire rafraîchir les données.

  3. #3
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Février 2006
    Messages : 70
    Points : 71
    Points
    71
    Par défaut Suppression des enregistrements
    Bonjour,

    Ton curseur ADODB est "en avant" seulement et il sera toujours positionné sur le 1er enregistrement au résultat de la requête.
    Ton instruction "MoveFirst" est inutile et surtout inefficace au 2ème tour du tableau.
    Tu dois exécuter ta requête dans la boucle de balayage de ton tableau.

    As-tu bien défini ton "lig", car ici il n'est pas initialisé et vaut 0.

    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
    Private Sub cmd_maj_Click()
    Set maj = New ADODB.Recordset
    For i = 0 To lig - 1
     
       If montableau(8, i) = "suppression citerne" Then
     
             maj.Open " select * from copie ", cnx, adOpenKeyset, adLockBatchOptimistic
     
            Do Until maj.EOF
                num = maj.Fields("numero")
                If (num = montableau(0, i)) Then
                    maj.Delete
                End If
                maj.MoveNext
            Loop
     
            maj.Close
     
       End If
    Next i
    set maj = Nothing
    End Sub
    Je pense que ta connexion est effectuée ailleurs ?

    Bon Courage

Discussions similaires

  1. recup des enregistrement les plus récents.
    Par julien_guy dans le forum Langage SQL
    Réponses: 8
    Dernier message: 29/06/2004, 11h04
  2. HELP!Comment supprimer des enregistrements de tables jointes
    Par ROOTPARIS dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/06/2004, 16h41
  3. Réponses: 7
    Dernier message: 21/04/2004, 17h16
  4. Réponses: 3
    Dernier message: 29/12/2003, 13h47
  5. Enlever tous les M&Mme des enregistrements
    Par marc olivier dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/07/2003, 12h24

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