Título: Re: Parameters De Sql?
Publicado por: luffymk en Miércoles 30 de Mayo de 2007, 21:02
aca encontre a lo que me refiero
pero no entendi la definicion y el modo de uso de sql
12. Consultas con Parámetros
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:
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
a sentencia PARAMETERS es una clausula?
que hacen estos parametros?
PARAMETERS Bargain Currency; SELECT Item, unitPrice AS Price FROM Products WHERE UnitPrice < Bargain;
PARAMETERS [Select a musician] Text, [Select a tune type] Text; SELECT Name FROM Tunes WHERE Type = [Select a tune type] AND Musician = [Select a musician];
Título: Re: Parameters De Sql?
Publicado por: Johnfer en Jueves 14 de Junio de 2007, 02:26
Deseo igualmente manejar Parametros en una consulta, para que me permita realizar la entrada, como ejemplo tengo la siguiente consulta
DECLARE @Fecha SMALLDATETIME Set @Fecha = ? If @Fecha >= '01/01/2007' Begin UPDATE nmmautol SET nmmautol.nmasalemp = ROUND(Datnomin77.dbo.nmmautol.nmaibcsal * 0.04, - 2) WHERE (naufecaut = @Fecha) AND (nmafonsal = '1') AND (nmaibcsal <> 0) End Else Print 'Error en Fecha'
No se como utilizar el parametro es que la Interrogación no funciona, al ejecutar esta consulta en SQL Server genera:
Msg 170, Level 15, State 1, Line 2 Línea 2: sintaxis incorrecta cerca de '?'.