none
Variable escalar en consulta sql contra Access RRS feed

  • Pregunta

  • Saludos a todos:

    Tengo un TableAdapter diseñado por el asistente de diseñador de consultas contra una BDD ACCESS.

    La sorpresa que me he llevado es que no me permite utilizar variable escalares como suelo hacer con SQL Server, como por ejemplo SELECT ..... FROM .... WHERE id = @id. 

    No me permite el @, sin embargo, con SQL Server no hay problemas.

    Gracias de antemano y un saludo a todos.

    viernes, 16 de mayo de 2014 10:22

Respuestas

  • Contra Access los parámetros de la sentencia se ponen con ? en lugar de @, y sin nombre. Por ejemplo:

    SELECT ..... FROM .... WHERE id = ?

    A la hora de construir los OleDbParameters para pasarle los valores, se les puede poner cualquier nombre. No los reconoce por su nombre, sino por el orden en el que se añaden al OleDbCommand (hay que seguir el mismo orden en el que aparecen las ? en la sentencia).

    • Marcado como respuesta ppito68 miércoles, 21 de mayo de 2014 22:18
    viernes, 16 de mayo de 2014 15:47

Todas las respuestas

  • Contra Access los parámetros de la sentencia se ponen con ? en lugar de @, y sin nombre. Por ejemplo:

    SELECT ..... FROM .... WHERE id = ?

    A la hora de construir los OleDbParameters para pasarle los valores, se les puede poner cualquier nombre. No los reconoce por su nombre, sino por el orden en el que se añaden al OleDbCommand (hay que seguir el mismo orden en el que aparecen las ? en la sentencia).

    • Marcado como respuesta ppito68 miércoles, 21 de mayo de 2014 22:18
    viernes, 16 de mayo de 2014 15:47
  • Muchas gracias, Alberto.

    Un saludo.

    sábado, 17 de mayo de 2014 1:44