Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   falla en consultas con fecha.... (http://www.forosdelweb.com/f69/falla-consultas-con-fecha-488004/)

PACO_TORG 07/05/2007 17:10

falla en consultas con fecha....
 
hola a todos otra vez..

tengo otro problema con una consulta de fechas este es el codigo



CONSULTA_FECHA.Open "select producto2,fecha from notas_detalle where # " & fecha & " #", MiConexion, adOpenDynamic, adLockOptimistic
Set DataGrid3.DataSource = CONSULTA_FECHA

lo hago con un texbox y me manda este error Error de Sintaxis en la fecha en la expresion de consulta '# #' , si es por de formato o por la variable que concatene mal



voy a tratar de hacerlo con un DTpicker (calendario) a ver si así no hay problemas con las formatos de fecha, porque creo que debe de ser dd-mm-yy "formato americano"

Insomnia 08/05/2007 00:39

Re: falla en consultas con fecha....
 
Hola

En principio veo que no estas igualando a nada el valor de fache, es decir, no estas indicando que campo de tu base de datos tiene que ser igual que la fecha, tendría que ser algo así como:

Código:

where CAMPOFECHA=# " & fecha & " #", MiConexion, adOpenDynamic, adLockOptimistic
--Saludos--

PACO_TORG 08/05/2007 01:40

Re: falla en consultas con fecha....
 
hola;
PROBE COMO ME DIJISTE Y NADA
LO CAMBIE YA POR ESTO Y MANDA EL MISMO ERROR
INTERCAMBIO COMILLAS Y ME MANDA ESTE OTRO ERROR ...no se puede utilizar la conexion para realizar esta operacion. esta cerrada o no es valida en este contexto.

Set CONSULTA_FECHA = New ADODB.Recordset
MiConexion.CursorLocation = adUseClient
CONSULTA_FECHA.Open "select producto2,fecha from notas_detalle where fecha # DTpicker1.value # , MiConexion, adOpenDynamic, adLockOptimistic"

Set DataGrid1.DataSource = CONSULTA_FECHA

QUE ESTOY HACIENDO MAL....

fero 08/05/2007 05:26

Re: falla en consultas con fecha....
 
Es correcto lo que dice Insomnia:

CONSULTA_FECHA.Open "select producto2,fecha from notas_detalle where
campofecha= #" & fecha & "#" , MiConexion, adOpenDynamic, adLockOptimistic
Set DataGrid3.DataSource = CONSULTA_FECHA

pero campofecha debe ser un campo fecha en la base de datos y fecha también debe ser campo fecha. Si es un textbox, es decir string, usar cdate(fecha)

Insomnia 08/05/2007 08:55

Re: falla en consultas con fecha....
 
Hola

Te pongo un ejemplo sencillo de una SELECT con fecha

Código:

Dim Comando as String

Comando = "SELECT Nom, Ape, fnac FROM Empleados where fnac = #" & Format(DTpicker1.value, "mm/dd/yyyy") & "#"

De esta forma la select esta correcta, es decir, lo que es texto fijo tiene que ir entre comillas ("Select..."), si quieres añadir una variable la tienes que unir con el & ("Select ...Where num=" & text1.text ).

Luego tienes que tener en cuentas que al igualar el WHERE a algo si es de tipo texto, tiene que estar entra comillas simples, los numéricos no llevan nada y las fechas entre #.

Si tienes dudas puedes utilizar el asistente de access para crear una consulta y luego desde Ver / Vista SQL analizar la sentencia SQL.

Otro tema es que la SQL este bien creada pero por ejemplo no tengas abierta la conexión a la base de datos o no hayas declarado bien alguna variable.

--Saludos--

PACO_TORG 08/05/2007 19:03

Re: falla en consultas con fecha....
 
que bien, gracias ... ya puede hacer una consulta con fechas..
peeeeeroo... :borracho:
pero ahora hay un proble_mon...

solo puedo consultar un cierto dia para ser claro el 05-05-07 y si selecciono otra fecha ya sea atras o adelante no muestra nada el datagrid.. esto a que se debe..
¿a alguien de uds. le ha pasado lo mismo?

'revise mi bd, y los campos de fecha tambien tienen ese tipo de formato dd-mm-yy,

configure mi pc a ese formato de fecha y tampoco..

el codigo lo hice así..

CONSULTA_FECHA.Open "select producto2,fecha from notas_detalle where fecha = #" & format(DPicker1.value,"dd-mm-yy"), MiConexion, adOpenDynamic, adLockOptimistic
Set DataGrid3.DataSource = CONSULTA_FECHA

Insomnia 09/05/2007 01:00

Re: falla en consultas con fecha....
 
Hola

Yo también tengo en mi equipo la configuración como dd-mm-yyyy, pero creo que la base de datos internamente lo guarda como mm-dd-yyyy, aunque luego lo muestre como dd-mm, es por eso que le tienes que pasar al formato mm-dd, RESUMIENDO, prueba a poner el código del format tal y como te lo pase yo y me comentas como te ha ido, es decir:

Código:

Format(DTpicker1.value, "mm/dd/yyyy")
--Saludos--

cristianeme 07/10/2010 23:20

Respuesta: falla en consultas con fecha....
 
como bien dice INSOMNIA las fechas se guardan como MMDDYYYY cuadno usas SQL, yo me rompi la cabeza con un problema similar ahsta que detecte como hacerlo
Cita:

Luego tienes que tener en cuentas que al igualar el WHERE a algo si es de tipo texto, tiene que estar entra comillas simples, los numéricos no llevan nada y las fechas entre #.
muchas gracias por esto! me ayudo muchisimo a despejar dudas


La zona horaria es GMT -6. Ahora son las 00:32.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.