Consultas de parámetro

En algunos casos tal vez necesite crear una consulta que pueda utilizar en muchas ocasiones, pero con un valor diferente cada vez. Por ejemplo, puede ejecutar habitualmente una consulta para buscar todos los title_ids escritos por un autor. Puede ejecutar la misma consulta para cada solicitud, con la salvedad de que el nombre o el id. del autor serán diferentes cada vez.

Para crear una consulta que pueda tener valores diferentes en distintas ocasiones, puede utilizar parámetros en la consulta. Un parámetro es un marcador de posición para un valor que se proporciona al ejecutar la consulta. Una instrucción SQL con un parámetro podría ser similar a lo que figura a continuación, donde "?" representa el parámetro del identificador del autor:

SELECT title_id
FROM titleauthor
WHERE (au_id = ?)

Dónde puede utilizar parámetros

Puede utilizar parámetros como marcadores de posición para valores literales: tanto para valores de texto como para valores numéricos. Generalmente, los parámetros se utilizan como marcadores de posición en condiciones de búsqueda para filas individuales o para grupos (es decir, en las cláusulas WHERE o HAVING de una instrucción SQL).

Algunas bases de datos permiten utilizar parámetros como marcadores de posición en expresiones. Por ejemplo, si desea calcular precios con descuento, proporcione un valor de descuento distinto cada vez que ejecute una consulta. Para hacerlo, puede especificar la siguiente expresión:

(price * ?)

Para obtener más detalles sobre dónde puede utilizar parámetros, consulte la documentación de la base de datos que esté utilizando.

Especificar parámetros sin nombre y con nombre

Puede especificar dos tipos de parámetros: sin nombre y con nombre. Un parámetro sin nombre es un signo de interrogación de cierre (?) que se coloca en cualquier parte de la consulta en que se desea solicitar o sustituir un valor literal. Por ejemplo, si utiliza un parámetro sin nombre para buscar el identificador de un autor en la tabla titleauthor, la instrucción resultante en el panel SQL podría ser así:

SELECT title_id
FROM titleauthor
WHERE (au_id = ?)

Cuando ejecute la consulta en el Diseñador de consultas y vistas, en Parámetros de la consulta (Cuadro de diálogo) aparecerá "?" como nombre del parámetro.

Como alternativa, puede asignar un nombre a un parámetro. Los parámetros con nombre son especialmente útiles si dispone de varios parámetros en una consulta. Por ejemplo, si utiliza parámetros con nombre para buscar el nombre y el apellido de un autor en la tabla authors, la instrucción resultante en el panel SQL puede presentar este aspecto:

SELECT au_id
FROM authors
WHERE au_fname = %first name% AND
      au_lname = %last name%
SugerenciaSugerencia

Debe definir caracteres de prefijo y de sufijo antes de crear una consulta de parámetros con nombre. Para obtener más información, vea Diseñador de consultas y vistas, Herramientas para bases de datos, Opciones (Cuadro de diálogo).

Cuando ejecute la consulta en el Diseñador de consultas y vistas, el Parámetros de la consulta (Cuadro de diálogo) mostrará una lista de parámetros con nombre.

Vea también

Conceptos

Tipos de consultas compatibles (Visual Database Tools)

Otros recursos

Realizar consultas con parámetros

Diseñar consultas y vistas