[VB.net] Compter le nombre d'enregistrement

Résolu
afrodje -  
afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je programme en vb.net avec une base MySQL.

J'aimerai compter le nombre d'enregistrement d'une requete.
Voici mon code :
        Dim connection As New Class_connection
            connection.connect()
            'requete
            Dim requete_select As String = "SELECT * FROM membre"
            Dim MyAdapter As MySqlDataAdapter = New MySqlDataAdapter
            Dim oMySQLConnection As New MySqlConnection
            'dataset cache en memoire de donnée
            Dim ds As DataSet = New DataSet
            'Lien entre la base et la requête
            MyAdapter.SelectCommand = New MySqlCommand(requete_select, oMySQLConnection)
            Dim nombre As Integer = MyAdapter.SelectCommand.ExecuteScalar()
            MsgBox(nombre)


Evidement, nombre correspond aux nombres d'enregistrement mais je n'arrive pas à trouver la bonne méthode.

Merci @ vous.
Configuration: Windows XP
Firefox 3.0

3 réponses

  1. OrionS Messages postés 55 Statut Membre 39
     
    
    Dim intCount As Integer
    intCount = ds.Tables("myTable").Rows.Count
    
    0
    1. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
       
      Comment c'est possible d'avoir "mytable" en parametre alors que je voudrais compter les enregistrements d'une requete (et non d'une table)
      0
    2. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
       
      J'ai essayé le code suivant mais il me renvoi toujours 1, quelle que soit la requete
      Dim requete_select As String = "SELECT * FROM membre"
      
                  
                      'Lien entre la base et la requête
                      Dim MyAdapter As MySqlDataAdapter = New MySqlDataAdapter
                      MyAdapter.SelectCommand = New MySqlCommand(requete_select, connection.Getconnection_base)
      
                      'Charge la table en mémoire 
                      Dim ds As DataSet = New DataSet
                      MyAdapter.Fill(ds)
      
                      Dim nombre As Integer = ds.Tables.Count()
                      MsgBox(nombre)
      0
  2. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
     
    J'ai trouvé la solution

     Dim requete_select As String = "SELECT nom FROM devis"
                    'Lien entre la base et la requête
                    Dim MyAdapter As MySqlDataAdapter = New MySqlDataAdapter
                    MyAdapter.SelectCommand = New MySqlCommand(requete_select, connection.Getconnection_base)Dim obt As MySqlDataReader
                    obt = MyAdapter.SelectCommand.ExecuteReader
                    While obt.Read
                        MessageBox.Show(obt.GetString(0))
                    End While
    0