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

ADO.NET Discussion :

Suppression d'une ligne dans une DATASET


Sujet :

ADO.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Programmeur occasionnel
    Inscrit en
    Juillet 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Programmeur occasionnel

    Informations forums :
    Inscription : Juillet 2015
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Suppression d'une ligne dans une DATASET
    Bonjour à tous,

    actuellement j'ai décidé d'apprendre à apprivoiser la gestion des bases de données dans Visual Basic 2010.

    Il me semble que je progresse mais j'ai tout de même besoin de vos lumières concernant les DATASET.

    J'ai une base de donnée contenant le nom de "Client " ainsi que leurs "identifiants" la "ville" de naissance par exemple.

    Je crée un Dataset dans mon projet afin de pouvoir filtrer les personnes nées à Marseille par exemple.

    De ce DATASET je souhaite extraire le nom d'une des personnes de la liste de manière aléatoire. Jusqu'ici tout va bien je m'en sors. Ce que je souhaite en revanche c'est qu'en tirant à nouveau une personne cela ne puisse pas être une personne déjà tiré. Pour cela je tente de supprimer la ligne dans mon DataSet qui contient le nom de la personne précédemment tiré mais cela ne fonctionne pas.

    Pour plus de compréhension je vous mets un exemple de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'connection à la base de donnée Access'
     
            Try
                connexion.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data source=C:\Users\CSilva2\Documents\Personnel\FIFA Draft generator.accdb"
                connexion.Open()
            Catch ex As Exception
                MessageBox.Show("Impossible d'établir la connection à la base." & ex.Message)
            End Try
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'Définition de la requête de sélection des Clients'
            requete = "SELECT ID, Nom, Ville FROM [Final DB]" & vbCrLf & _
                        "WHERE Ville = 'Marseille'"
            Dim commande As New System.Data.OleDb.OleDbCommand(requete, connexion)
            Dim Adaptateur As New System.Data.OleDb.OleDbDataAdapter(commande)
     
            'Chargement de la table de tri des joueurs'
            Try
                Adaptateur.Fill(MonDataSet, "[Final DB]")
     
            Catch ex As Exception
                MsgBox("Il n'y a pas de personnes née à " & Ville )
            End Try
    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
         'Tirage de la personne au hasard'
     
            Dim Nombre As Integer
            Dim Personne_Tiré As String
            Dim Random As New Random()
            Dim a As Interger, Ligne As Integer
     
            Ligne = (MonDataSet.Tables("[Final DB]").Rows.Count)
     
            Nombre = Random.Next(0, Ligne - 1)
     
            Personne_Tiré = (MonDataSet.Tables("[Final DB]")(a)("Nom"))
     
            'Suppression de la ligne contenant la personne dans le DataSet'
     
            For a = 0 To Ligne - 1
                    If (MonDataSet.Tables("[Final DB]")(a)("Nom")) = Personne_Tiré Then
                        MonDataSet.Tables("[Final DB]").Rows(a).Delete()
                    End If
            Next

  2. #2
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 233
    Points : 336
    Points
    336
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            Dim Nombre As Integer
            Dim Personne_Tiré As String
            Dim Random As New Random()
            Dim a As Interger, Ligne As Integer
     
            Ligne = (MonDataSet.Tables("[Final DB]").Rows.Count)
     
            Nombre = Random.Next(0, Ligne - 1)
     
            Personne_Tiré = (MonDataSet.Tables("[Final DB]")(a)("Nom"))
     
            'Suppression de la ligne contenant la personne dans le DataSet'
            MonDataSet.Tables("[Final DB]").Rows.Remove(MonDataSet.Tables("[Final DB]")(a))
    "Hope for the best, but prepare for the worst."

Discussions similaires

  1. Réponses: 15
    Dernier message: 21/10/2009, 13h31
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [E-00] Syntaxe pour insérer une ligne ou une colonne dans une feuille
    Par Benjycool dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2009, 09h27
  4. [MySQL] inserer une ligne d'une table dans une autre table
    Par piero53 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 14/12/2008, 18h29
  5. Réponses: 3
    Dernier message: 29/01/2008, 12h08

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