Access - Problemas transformar texto a fecha

 
Vista:

Problemas transformar texto a fecha

Publicado por Jose (1 intervención) el 09/10/2007 10:30:03
Hola a todos,

Quiero hacer un filtro mediante la fecha guardada en la base de datos. Esta fecha esta guardada como tipo texto; con el consiguiente problema de que no me puedo obtener los filas que su fecha sean mayor a la fecha dada.

Si hago:

Select * from tabla where DateValue (Fecha) > DateValue ("08/10/2007").

Me da un error de coincidencia de tipos. he probado en añadirle un Format(), CDate,..., y no me ha funcionado. :'(

El formato del campo texto Fecha cumple dd/mm/aaaa

¿Alguna solución?

Muchas Gracias

- Jose -
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas transformar texto a fecha

Publicado por xavi (92 intervenciones) el 09/10/2007 11:16:56
Hola,

Suponiendo que el valor fecha lo tomes de un formulario y que construyas la SQL desde ese formulario, puedes probar asi:

misql = "SELECT * FROM tabla WHERE Fecha > #" & Format(DateValue ("08/10/2007"), "mm/dd/yyyy") & "#"

Un saludo
Xavi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha

Publicado por Jose (3 intervenciones) el 09/10/2007 12:26:20
Hola,

Gracias por contestar tan rápido. He probado lo que me has dicho en una vista SQL de access:

select *
from Tabla
where Fecha > Format(DateValue ("08/10/2005"), "mm/dd/yyyy")
order by CDate(Fecha) desc

Me devuelve valores cuya fecha es menor a la fecha dada. Creo que es por el campo Fecha es tipo Texto y por lo que veo no puede operar como si fuera un campo Fecha/Hora.

Si se os ocurre algo más os estaría muy agradecido.

Saludos,

- Jose -
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha

Publicado por xavi (92 intervenciones) el 09/10/2007 14:25:16
A ver si asi:

select *
from Tabla
where Format(DateValue(Fecha), "mm/dd/yyyy") > Format(DateValue ("08/10/2005"), "mm/dd/yyyy")
order by CDate(Fecha) desc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha

Publicado por Jose (3 intervenciones) el 09/10/2007 14:40:23
Hola Xavi,

Gracias por contestar de nuevo.

De la manera que comentas me da un error:

No coinciden los tipos de datos en la expresión de criterios.

Si se te ocurre algo más me comentas. Seguiré mirando a ver si encuentro algo.

Saludos y muchas gracias!

- Jose -
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha

Publicado por xavi (92 intervenciones) el 09/10/2007 15:55:16
Hola,

La verdad es que se me ocurre que hagas una conversión y guardes el campo en la tabla como Fecha/Hora para evitar esos problemas.

Ojo: los experimentos, con gaseosa.

Un saludo

Xavi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha

Publicado por Jose (3 intervenciones) el 10/10/2007 12:35:52
Solucion:

SELECT *
FROM Tabla
WHERE CDate(Fecha)>#1/31/2005#
ORDER BY CDate(Fecha);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas transformar texto a fecha CERRADO

Publicado por xavi (92 intervenciones) el 10/10/2007 14:52:16
Me alegro que lo solucionaras.

Xavi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar