Hola de nuevo,
Os cuento. La idea es tener una bd Access 97 con consultas en SQL guardadas en una tabla en campos memo, y tener otra tabla con los parametros para esas consultas, y poder pasarle los valores de los parametros desde el programa directamente.
Tengo una SQL metida en un campo memo de una bd Access 97. Esa SQL la voy a ejecutar sobre otra bd.
En la SQL incluyo parametros, para luego pasarselos desde el programa en Delphi 5 que estoy haciendo. Ejemplo de como paso el parametro:
'SELECT * FROM tabla WHERE Cod =
aram1 or Cod =
aram2'
Desde el programa hago una consulta sobre la tabla donde tengo la SQL metida y la cojo, montando una consulta dentro del programa con esa SQL:
SQL.Add(
sqlQueCojoDelCampoMemo);
Aparte de la tabla donde guardo la SQL, tengo otra tabla donde guardo los parametros (con su tipo de dato y valor) asignados a esa SQL, y que utilizo para montar la consulta:
p.e.
parametro tipoDato
param1 fecha
param2 fecha
Voy añadiendo a la consulta los parametros comprobando el tipo de dato (no entro en detalle):
While not (
parametrosAsociadosAConsulta).Eof then
SQL.ParamByName(parametro).TipoDAto := valorPasadoDesdeElPrograma
La ejecuto y sin problemas, pero al sacar por pantalla la consulta
Show(SQL.text)
Los parametros de la consulta no se subtituyen por los valores, aparece '?'. He probado a pasar un único parametro y ocurre lo mismo.
Bueno, es un poco liosa la explic. pero a ver si alguien sabe porque no coge los valores.
GRacias!