A la hora de crear una conexión al SGBD SQL puede especificar una consulta para seleccionar datos filtrados o combinados. Las herramientas normales del asistente para crear fuentes de datos también permiten incluir parámetros en la consulta SQL. En este caso la designación del parámetro dependerá del tipo del SGBD al que se realiza la conexión. Por ejemplo, para MS SQL el parámetro en la consulta tiene el prefijo @. Y en la base Access en lugar del parámetro se indica el símbolo "?". Si hay varios parámetros, en la consulta se insertarán según el órden en la lista de parámetros.
Supongamos que hemos creado una cadena de conexión a la base de datos SQL. El siguiente paso es la selección de tablas:
En esta etapa podemos crear una consulta SQL utilizando el botón Add SQL query .... El resultado de la futura consulta se guardará en la tabla. Hay que dar nombre al objeto de consulta:
A continuación, escriba el texto de solicitud:
Claro, aquí puede utilizar el diseñador visual de consultas pero ahora no lo necesitamos; el objetivo de la demostración es una consulta.
Hemos especificado un parámetro en la condición de solicitud. En el siguiente paso tiene que crear un parámetro con el mismo nombre.
Como estamos demostrando cómo trabajar con parámetros, solo establecemos el valor por defecto:
A continuación, seleccione las columnas deseadas.
Ya está. La tabla está hecha.
Recuerde, se recomienda escribir consultas según todas las reglas de SQL, con la indicación de los esquemas y, quizás, con los nombres entre comillas. Aquí tiene un ejemplode una consulta correcta a la base de datos postgresql:
1 |
SELECT * FROM public."Users" WHERE "Users"."Name"= @Name
|
Pero, además de la consulta parametrizada, también podemos utilizar consultas dinámicas. Son solicitudes que formamos en un formulario de texto para después ejecutarlas. Las consultas de este tipo permiten, utilizando variables de informe, sustituir, por ejemplo, el nombre de una tabla o un parámetro o parte de la condición where, o sea, cualquier cosa. Se ve así:
Pero no es todo. También puede utilizar funciones almacenadas y procedimientos almacenados en una consulta. Aquí tiene un ejemplo de cómo utilizar una función:
Parámetros en las funciones se pasan entre paréntesis, separadas por comas.
Un ejemplo de utilizar un procedimiento almacenado:
Parámetros en el procedimiento almacenado se acompañan por el nombre del procedimiento separados por coma.
De esta manera puede aumentar la capacidad de la generación de datos para no hacerlo dentre del informe.