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.NET Discussion :

Suppression de la base de données [Débutant]


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut Suppression de la base de données
    Bonjour, S'il vous plait aidez moi;
    le problème est le suivant: j'ai fait une petite application vb.net liée à une base de données Access,
    dans la base de données j'ai une seule table "Zones" qui les champs suivant, "Nom_Zone", "Champ2", "Champ3" et "Champ4".
    j'ai ajouter une listeBox que j'ai appelé "ListZones".
    Normalement à l'ouverture de l'application les les "Nom_Zone" doivent être afficher dans la liste et ça je l'ai fait.
    le problème c'est quand je veux supprimer une zone, la suppression se passe dans la base de données mais l'actualisation de la "ListZones" ne se passe pas bien.
    Voici le code du bouton "Supprimer" qui supprimer une "zone" selectionner de la "ListZones".

    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
    'ouverture de la connection (à partir du répertoire de l'application) sur la même ligne      
            cnxstr = "provider = microsoft.jet.oledb.4.0 ; data source = " & Application.StartupPath & "\Data base.mdb;"
            cnx = New OleDbConnection
            cnx.ConnectionString = cnxstr
            cnx.Open()
            'Création de la requête sql      
            Sql = "delete from Zones where Nom_Zone=" & "'" & nom_zone & "'"
            'Création de la commande et on l'instancie (sql)       
            cmd = New OleDbCommand(sql)
            'Création du dataadapter (dta) et on l'instancie (cmd)      
            dta = New OleDbDataAdapter(cmd)
     
            'On instancie la commande (cmd) à la connection (cnx)       
            cmd.Connection() = cnx
     
            'On charge le dataset (dts) grâce à la propriété fill du dataadapter (dta)      
            dta.Fill(dts, "Zones")
     
            'On charge la datatable (dtt) grâce à la propriété tables du dataset (dts)
            dtt = dts.Tables("Zones")
            cmd.ExecuteNonQuery()
            Dim n As Integer = dtt.Rows.Count
            Dim zones(n) As String
            Form2.ListZones.Items.Clear()
            For i = 0 To n - 1
                zones(i) = dtt.Rows(i).Item(0).ToString
                Form2.ListZones.Items.Add(zones(i))
            Next
            cnx.Close()
    Merci d'avance.

  2. #2
    Membre expérimenté Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Points : 1 699
    Points
    1 699
    Par défaut
    Bonjour,
    D'anord, utilises la balise code (bouton #) de ton éditeur pour rendre tes bouts de codes plus lisibles.

    Pour ton problème, je crois que si tu utilises la même datatable comme source données de ta listbox, cette dernière devrait-être mis à jour automatiquement si la datatable est elle aussi est mise à jour.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    '......
    ListZones.DataSource = taDataTable

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    D'abord merci pour ta réponse,
    juste pour information, j'utilise la "ListZones" en mode indépendant, et dans le loading de l'application je fais la connexion avec la base de données puis je la remplie.

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut
    dans ce cas la vous devez vider et remplir ta ListZones a chaque suppression ou ajout ou modification dans la base de donnés

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    c'est ça ce que j'ai fait normalement dans le code mais ça écrit deux fois la liste des zones avant suppression + la liste après suppression

  6. #6
    Membre expérimenté Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Points : 1 699
    Points
    1 699
    Par défaut
    Citation Envoyé par emable Voir le message
    c'est ça ce que j'ai fait normalement dans le code mais ça écrit deux fois la liste des zones avant suppression + la liste après suppression
    Dans ce cas, tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListZones.Items.Clear()
    avant l'ajout des items dans la listbox.

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    si vous avez lit le code que j'ai déposer vous allez voir c'est déjà fait.

  8. #8
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut
    peut être le problème est dans zones(n)



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim n As Integer = dtt.Rows.Count
            Dim zones(n) As String
            Form2.ListZones.Items.Clear()
            For i = 0 To n - 1
                zones(i) = dtt.Rows(i).Item(0).ToString
                Form2.ListZones.Items.Add(zones(i))
            Next
    essai ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim n As Integer = dtt.Rows.Count
            Form2.ListZones.Items.Clear()
            For i = 0 To n - 1
                Form2.ListZones.Items.Add( dtt.Rows(i).Item(0).ToString)
            Next

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    j'ai essayé ton code "abd75web" au moins ça donne seulement la liste des zones avant suppression, apparemment il faut une procedure qui actualise la datatable après suppression.

  10. #10
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    j'ai trouver la solution.
    il faut juste ajouter un
    pour effacer le dataset avant le nouveau remplissage avec le reste des zones après suppression.
    Merci à vous tous pour votre aide et votre temps.

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

Discussions similaires

  1. Problème de suppression dans la base de donnée.
    Par Kasko dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 02/03/2015, 08h16
  2. Problème de suppression d'une base de données
    Par Khleo dans le forum Administration
    Réponses: 0
    Dernier message: 17/04/2014, 11h19
  3. suppression d'un base de donnée
    Par ilhamzinedine dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 02/03/2011, 14h04
  4. suppression base de donnée
    Par donny dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 31/07/2005, 10h55

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