Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/11/2011, 07:07
ci2000
 
Fecha de Ingreso: abril-2005
Mensajes: 483
Antigüedad: 19 años, 11 meses
Puntos: 3
No se controló MySqlException

Hola. En el siguiente procedimiento me da el error "There is already an open DataReader associated with this Connection which must be closed first."

Según entiendo me dice que el DataReader está abierto.

Código:
    Private Sub TxCalle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxCalle.TextChanged
        BuscaCalle()
    End Sub
Código:
    Private Sub BuscaCalle()
        LaCalle.Text = String.Empty
        If Len(TxCalle.Text) > 0 Then
            Dim sql As MySqlCommand = New MySqlCommand
            sql.Connection = Conexion
            If Len(TxLetra.Text) > 0 Then
                sql.CommandText = "SELECT * FROM calles WHERE id = " & TxCalle.Text & " AND letra = '" & TxLetra.Text & "'"
            Else
                sql.CommandText = "SELECT * FROM `calles` WHERE id = '" & TxCalle.Text & "' AND letra = ''"
            End If
            sql.CommandType = CommandType.Text

            Dim dr As MySqlDataReader
            dr = sql.ExecuteReader()    'Acá me muestra el error
            If dr.HasRows Then
                While dr.Read()
                    LaCalle.Text = dr("calle").ToString
                End While
            Else
                LaCalle.Text = "INEXISTENTE"
            End If
            sql = Nothing
            dr.Close()
            dr = Nothing
        End If
    End Sub
Si se genera mediante teclado el evento TextChanged no me da error, pero si a TxCalle le asigno un valor mediante TxCalle.Text =CStr(1) si me da error.


Gracias desde ya por las respuestas.
Saludos

Última edición por ci2000; 10/11/2011 a las 07:23