Tutorial de SQL SERVER
12. Consultas con Parametros
Las consultas con parámetros son aquellas cuyas condiciones de búsqueda
se definen mediante parámetros. Si se ejecutan directamente desde
la base de datos donde han sido definidas aparecerá un mensaje solicitando
el valor de cada uno de los parámetros. Si deseamos ejecutarlas
desde una aplicación hay que asignar primero el valor de los parámetros
y después ejecutarlas. Su sintaxis es la siguiente:
PARAMETERS nombre1 tipo1, nombre2 tipo2, ... , nombreN
tipoN Consulta
En donde:
| Parte |
Descripción |
| nombre |
Es el nombre del parámetro |
| tipo |
Es el tipo de datos del parámetro |
| consulta |
Una consulta SQL |
Puede utilizar nombre pero no tipo de datos en una cláusula WHERE
o HAVING.
PARAMETERS Precio_Minimo
Currency, Fecha_Inicio
DateTime;
SELECT IDPedido, Cantidad
FROM Pedidos
WHERE
Precio > Precio_Minimo
AND FechaPedido >=
Fecha_Inicio;
El ejemplo siguiente muestra como utilizar los parámetros en
el programa de Visual Basic:
Public Sub GeneraConsulta()
Dim SQL As String
Dim Qd As QueryDef
Dim Rs As Recordset
SQL = "PARAMETERS Precio_Minimo Currency, Fecha_Inicio
DateTime; "
SQL = SQL & "SELECT IDPedido, Cantidad FROM
Pedidos WHERE Precio > "
SQL = SQL & "Precio_Minimo AND FechaPedido >=
Fecha_Inicio; "
Set Qd = BaseDatos.CreateQueryDef(MiConsulta, SQL)
Qd.Parameters!Precio_Minimo = 2
Qd.Parameters!FechaInicio = #31/12/95#
Set Rs = Qd.OpenRecordset()
End Sub
Ejemplo:
PARAMETERS [Escriba
los Apellidos:]
Text;
SELECT
*
FROM Empleados
WHERE [Escriba los
Apellidos:] = [Apellidos];
La ejecución desde la base de datos solicita al usuario los
apellidos del empleado y después muestra los resultados.