none
Consulta SQL en VB RRS feed

  • Pregunta

  • Buenos días 

    Estimados, soy principiante en VB y SQL por lo que me encuentro con una duda.. necesito filtrar datos de una tabla por lo que al hacerlo de la manera que detallo abajo si es con un solo filtro (solo ID sin filtrar por edad o viceversa) me funciona, pero al momento de realizar dos filtros juntos no me funciona:

    "SELECT * FROM Tabla1 WHERE ID =" &Id " AND Edad >"&Edad

    como se realizaría esta consulta correctamente?

    Disculpen si me expreso mal en los termino, soy muy nuevo en esto, gracias por su ayuda 

    Saludos

    miércoles, 21 de febrero de 2018 12:15

Respuestas

  • ¿Qué valor tienes en la variable Edad?

    Estás montando la cadena de consulta pero lo aconsejable es usar consultas parametrizadas:

    Dim SQLconsulta as String = "SELECT * FROM Tabla1 WHERE ID = @Id AND Edad > @Edad"

    Using Comando As New OleDbCommand(SQLconsulta, connection)
        Comando.Parameters.AddWithValue("@Id", ValorDeId)
        Comando.Parameters.AddWithValue("@Edad", ValorDeEdad)
        Comando.ExecuteNonQuery()
    End Using



    Saludos, Javier J


    miércoles, 21 de febrero de 2018 12:31

Todas las respuestas

  • ¿Qué valor tienes en la variable Edad?

    Estás montando la cadena de consulta pero lo aconsejable es usar consultas parametrizadas:

    Dim SQLconsulta as String = "SELECT * FROM Tabla1 WHERE ID = @Id AND Edad > @Edad"

    Using Comando As New OleDbCommand(SQLconsulta, connection)
        Comando.Parameters.AddWithValue("@Id", ValorDeId)
        Comando.Parameters.AddWithValue("@Edad", ValorDeEdad)
        Comando.ExecuteNonQuery()
    End Using



    Saludos, Javier J


    miércoles, 21 de febrero de 2018 12:31
  • Javier, muchas gracias por tu ayuda

    la variable Edad tiene asignado el valor 20

    Dim Edad as integer

    Edad = 20

    Voy a intentar con el código que me pasaste y comento como me fue 

    un abrazo !

    miércoles, 21 de febrero de 2018 14:53