Problema con query
A ver si puedes echarme una mano porque he topado con un problema al que no consigo darle solución.
Estoy desarrollando para mi empresa un programa en Visual Basic-Access 2003 para gestionar el stock del almacén.
En una parte del programa he desarrollado un pequeño generador de consultas en el que básicamente se va construyendo una cadena que no es otra cosa que una SELECT.
Las búsquedas funcionan a la perfección, excepto cuando entran en juego datos de tipo fecha.
En la cadena SQL las fechas las paso con un # delante y detrás. Lo más curioso es que únicamente me encuentra registros en una fecha determinada cuyo día vaya del 10 al 31, es decir, todos los registros cuya fecha de compra (o venta según sea el caso) en los que el número del día sea 01, 02, 03, 04, 05, 06, 07, 08 o 09 "no existen", aunque en realidad esas entradas sí que están almacenadas en la tabla.
Te pego el código que tengo puesto, por si pudieras echarle un vistazo y detectas alguna cosa incorrecta.
Dim strsql As String
Dim dbquery As Database
Dim rsquery As Recordset
strsql = "SELECT * FROM DCOMPRA WHERE FCompra = #05/04/2010#"
Set dbquery = CurrentDb
Set rsquery = dbquery.OpenRecordset(strsql, dbOpenDynaset)
El campo FCompra es de tipo Date y aunque en la tabla DCompra tengo varias entradas cuya fecha de compra es 05/04/2010, la consulta no devuelve resultados.
Estoy desarrollando para mi empresa un programa en Visual Basic-Access 2003 para gestionar el stock del almacén.
En una parte del programa he desarrollado un pequeño generador de consultas en el que básicamente se va construyendo una cadena que no es otra cosa que una SELECT.
Las búsquedas funcionan a la perfección, excepto cuando entran en juego datos de tipo fecha.
En la cadena SQL las fechas las paso con un # delante y detrás. Lo más curioso es que únicamente me encuentra registros en una fecha determinada cuyo día vaya del 10 al 31, es decir, todos los registros cuya fecha de compra (o venta según sea el caso) en los que el número del día sea 01, 02, 03, 04, 05, 06, 07, 08 o 09 "no existen", aunque en realidad esas entradas sí que están almacenadas en la tabla.
Te pego el código que tengo puesto, por si pudieras echarle un vistazo y detectas alguna cosa incorrecta.
Dim strsql As String
Dim dbquery As Database
Dim rsquery As Recordset
strsql = "SELECT * FROM DCOMPRA WHERE FCompra = #05/04/2010#"
Set dbquery = CurrentDb
Set rsquery = dbquery.OpenRecordset(strsql, dbOpenDynaset)
El campo FCompra es de tipo Date y aunque en la tabla DCompra tengo varias entradas cuya fecha de compra es 05/04/2010, la consulta no devuelve resultados.
Respuesta de Jose Mari Madinabeitia
1