none
Necesito devolver un mensaje cuando realizo una busqueda en mi tabla sql RRS feed

  • Pregunta

  • Creando la busqueda:

     abrir()
            Dim query As String = "SELECT * FROM  dbo.tbl_KardexDeClientes"
            Dim cmd = New SqlCommand(query, con)
            cmd.Parameters.AddWithValue("@str_NumDocumentoDeVisita", txtbuscar.Text)
            Dim da As New SqlDataAdapter(cmd)
            Dim dt As New DataTable
            da.Fill(dt)
            If dt.Rows.Count > 0 Then
                MsgBox("si", MsgBoxStyle.Information)

    'aqui se mostrara en texbox si hay datos

            Else
                MsgBox("No hay informacion que mostrar", MsgBoxStyle.Information)
            End If

            cerrar()

    como vera la informacion se muestra en los texbox cuando hay dato pero cuando no esta registrado no me 

    aparece el mensaje que no hay informacion que mostrar

    porfavor ayudenme a solucionarlo, gracias

    jueves, 18 de julio de 2019 19:34

Todas las respuestas

  • El principal problema que le veo a ese código es que la sentencia es "fija". No usa para nada el parámetro. Por lo tanto, siempre devuelve los mismos resultados. Mientras exista algún registro en la tabla, siempre va a salir el mensaje de "si". Da igual lo que se introduzca en txtbuscar.Text porque nunca se usa para nada en la sentencia.

    Probablemente la intención era hacer algo así:

    Dim query As String = "SELECT * FROM  dbo.tbl_KardexDeClientes WHERE nombreDeColumna=@str_NumDocumentoDeVisita"

    jueves, 18 de julio de 2019 20:54
  • Proba con esto amigo.. El problemas es que te falta un where.. nunca va a entrar en el ELSE

    abrir()
            Dim query As String = "SELECT * FROM  dbo.tbl_KardexDeClientes where columna = @str_NumDocumentoDeVisita"
            Dim cmd = New SqlCommand(query, con)
            cmd.Parameters.AddWithValue("@str_NumDocumentoDeVisita", txtbuscar.Text)
            Dim da As New SqlDataAdapter(cmd)
            Dim dt As New DataTable
            da.Fill(dt)
            If dt.Rows.Count > 0 Then
                MsgBox("si", MsgBoxStyle.Information)
    
    'aqui se mostrara en texbox si hay datos
    
            Else
                MsgBox("No hay informacion que mostrar", MsgBoxStyle.Information)
            End If
    
            cerrar()

    Bader Molinas 

    Paraguay


    jueves, 18 de julio de 2019 21:01