Rechercher : dans
Par :

[VB.net] Compter le nombre d'enregistrement

Dernière réponse le 8 fév 2008 à 12:17:43 afrodje, le 7 fév 2008 à 16:09:22 
 Signaler ce message aux modérateurs

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

1

OrionS, le 7 fév 2008 à 21:56:15

Bonsoir,

regarde l'adresse suivant je pense que cela peux t'aider : http://plasserre.developpez.com/v6-5.htm.

Répondre à OrionS

2

OrionS, le 7 fév 2008 à 22:03:32


Dim intCount As Integer
intCount = ds.Tables("myTable").Rows.Count

Répondre à OrionS

3

afrodje, le 8 fév 2008 à 09:44:10

Comment c'est possible d'avoir "mytable" en parametre alors que je voudrais compter les enregistrements d'une requete (et non d'une table) 1000101 et plus si affinité ;)

Répondre à afrodje

4

afrodje, le 8 fév 2008 à 11:42:14

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)
1000101 et plus si affinité ;)

Répondre à afrodje

5

 afrodje, le 8 fév 2008 à 12:17:43
  • +1

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
1000101 et plus si affinité ;)

Répondre à afrodje