none
Validacion en una consulta RRS feed

  • Pregunta

  • Buenas tardes, les hago una pregunta, tengo una consulta hecha en vb.net en donde ingreso un codigo y me trae los datos a los demas textbox. Lo que quisiera saber es como hago para que, en el caso de que un codigo no tenga ningun dato, me muestre un mensaje de error. Desde ya, muchas gracias
    viernes, 1 de abril de 2016 18:42

Respuestas

  • Hola:

     Ya tienes el 99% echo, solo falta aprovechar el Else de tu condición IF.

    Dim conecto As New SqlConnection("Data Source=localhost;Initial Catalog=Peliculas;Integrated Security=True")
    conecto.Open()
    Dim consulta As String = "Select * from Pelicula where Codigo = " + Txtcodigos.Text
    Dim command As New SqlCommand(consulta, conecto)
    Dim drd As SqlDataReader
    drd = command.ExecuteReader()
    If drd.Read() Then
        Me.Txtcodigos.Text() = drd.Item("Codigo").ToString()
        Me.Txttitulos.Text() = drd.Item("Titulo").ToString()
        Me.Txtgeneros.Text() = drd.Item("Genero").ToString()
        Me.Txtduraciones.Text() = drd.Item("Duracion").ToString()
        Me.Txtcomentarios.Text() = drd.Item("Comentarios").ToString()
    Else
    	MessageBox.Show("Tu mensaje")
    End If
    drd.Close()
    conecto.Close()
     En  negritas los cambios.


    Saludos desde Monterrey, Nuevo León, México!!!

    viernes, 1 de abril de 2016 19:08

Todas las respuestas

  • Hola:

     Y como es que estas pasando la información de DataReader a los controles?, los tomas directamente?, usas clases?, usas algún DataTable?, 

     De entrada la lógica seria preguntar por el contenido del Objeto para saber si contiene o no rows (pensando en un DataReader o DataTable) o preguntar si es diferente de Nulo si es una Clase con sus propiedades.

     Comparte el código que usas para recuperar y mapear la información para partir de ahí.


    Saludos desde Monterrey, Nuevo León, México!!!

    viernes, 1 de abril de 2016 18:52
  • Hola Jose, tenes razón, perdón... me olvide de esa parte. El código que me esta funcionando es el siguiente:

    Dim conecto As New SqlConnection("Data Source=localhost;Initial Catalog=Peliculas;Integrated Security=True")
            conecto.Open()
            Dim consulta As String = "Select * from Pelicula where Codigo = " + Txtcodigos.Text
            Dim command As New SqlCommand(consulta, conecto)
            Dim drd As SqlDataReader
            drd = command.ExecuteReader()
            If drd.Read() Then
                Me.Txtcodigos.Text() = drd.Item("Codigo").ToString()
                Me.Txttitulos.Text() = drd.Item("Titulo").ToString()
                Me.Txtgeneros.Text() = drd.Item("Genero").ToString()
                Me.Txtduraciones.Text() = drd.Item("Duracion").ToString()
                Me.Txtcomentarios.Text() = drd.Item("Comentarios").ToString()
            End If
            drd.Close()
            conecto.Close()

    Saludos

    viernes, 1 de abril de 2016 19:04
  • Hola:

     Ya tienes el 99% echo, solo falta aprovechar el Else de tu condición IF.

    Dim conecto As New SqlConnection("Data Source=localhost;Initial Catalog=Peliculas;Integrated Security=True")
    conecto.Open()
    Dim consulta As String = "Select * from Pelicula where Codigo = " + Txtcodigos.Text
    Dim command As New SqlCommand(consulta, conecto)
    Dim drd As SqlDataReader
    drd = command.ExecuteReader()
    If drd.Read() Then
        Me.Txtcodigos.Text() = drd.Item("Codigo").ToString()
        Me.Txttitulos.Text() = drd.Item("Titulo").ToString()
        Me.Txtgeneros.Text() = drd.Item("Genero").ToString()
        Me.Txtduraciones.Text() = drd.Item("Duracion").ToString()
        Me.Txtcomentarios.Text() = drd.Item("Comentarios").ToString()
    Else
    	MessageBox.Show("Tu mensaje")
    End If
    drd.Close()
    conecto.Close()
     En  negritas los cambios.


    Saludos desde Monterrey, Nuevo León, México!!!

    viernes, 1 de abril de 2016 19:08
  • SOLUCIONADO!! Muchas gracias, Jose... perdona las molestias!!! Saludos desde Argentina
    viernes, 1 de abril de 2016 19:13