La cláusula 'Parameters', tan injustamente infrautilizada por los programadores de Access, además de dar la seguridad de que el valor que pasamos como parámetro, va a ser tratado adecuadamente según el tipo de dato, podemos emplearla para definir constantes a usar dentro de una sentencia sql.
Veamos un ejemplo (sacado de una pregunta en las News) :
Obtener el número de semana del mes de una fecha dada, por ejemplo para 31 de Marzo de 2008.
Select ((Day(#03/31/2008#) - WeekDay((#03/31/2008#,2))\7)+Abs(((Day((#03/31/2008#) - WeekDay((#03/31/2008#,2))Mod 7) > 0)+1
Ha sido necesario escribir cuatro veces la fecha para obtener el valor : como mínimo tedioso ...
Vamos a usar la propiedad 'Default' de un parámetro (no nos va a preguntar el valor, cuando ejecutemos la consulta), para crear algo parecido a una constante :
Parameters F DateTime=#03/31/2008#;
Select ((Day(F) - WeekDay(F,2))\7)+Abs(((Day(F) - WeekDay(F,2))Mod 7) > 0)+1
... más corto, más legible, más cómodo, ...
Ramon Poch. Terrassa, a 01/04/2008.