Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/11/2011, 11:42
Antc1993
 
Fecha de Ingreso: febrero-2010
Mensajes: 24
Antigüedad: 14 años, 3 meses
Puntos: 0
vb .net Duda: consulta a mysql

Hola, empece hace poco con vb, y tengo una duda al momento de acceder a los datos extraidos de la base de datos mysql, yo tengo esta funcion

Código:
    Public Function sql_seleccionar(ByVal consulta As String) As Object

        DBCon = New MySQLConnection(New MySQLConnectionString("localhost", "bd", "user", "pass", 3306).AsString)

        Try
            'Abrimos la conexión y comprobamos que no hay error
            DBCon.Open()
        Catch ex As MySQLException
            'Si hubiese error en la conexión mostramos el texto de la descripción
            MsgBox(ex.Message.ToString)
            bConexionExitosa = False
      End Try


        If bConexionExitosa Then

            Dim sql As MySQLCommand = New MySQLCommand(consulta, DBCon)
            sql.CommandType = CommandType.Text
            Dim dr As System.Data.IDataReader
            dr = sql.ExecuteReader()

            DBCon.Close()
            Return dr

        Else
            Return "Error de conexion con la BD"
        End If

    End Function
Bueno con esa funcion realizo las consultas de seleccionar registros, y devuelvo un IDataReader, luego cuento los registros (es un login)

Código:
       Dim comprobrar_usuario As IDataReader
        comprobrar_usuario = sql_seleccionar("SELECT id FROM Usuarios WHERE user='" & usuario & "' AND pass='" & contrasena & "'")

        Dim contador As Integer
        While comprobrar_usuario.Read()
            contador = contador + 1
        End While

       If contador > 0 Then
            While comprobrar_usuario.Read()
                MsgBox(comprobrar_usuario("id"))
            End While
        End If
El problema que tengo es el segundo while no se ejecuta, el primero que contiene el contador si se ejecuta, pero pareciera que mas de un while no funciona, nose que es, y ya probe en la parte del contador poner un MsgBox(comprobrar_usuario("id")) y me envia la alerta bien, asi que la consulta esta bien.
Espero que me puedan ayudar muchas gracias.