Duda sobre como grabar fecha

Orlando
13 de Mayo del 2004
Hola, gracias por leer el mensaje. Mi pregunta es
acerca de cómo se guarda y lee posteriormente las fechas en ACCESS 2000. Yo pretendo leer siempre
de la misma forma ("YYYY/MM/DD") , por ejemplo:
En SQL debe ser "Select * from nacimientos where fecha = #" & Format(dfecha, "yyyy/mm/dd") & "#"

... pero a veces me dice que no hay datos, cuando realmente yo se que los hay.

Cuando hago la pregunta de esta forma:

"Select * from nacimientos where fecha = #" & dfecha & "#"...., si me lee los datos que quiero.

Mi pregunta es: ¿puede ser que los datos se hayan grabado de alguna otra forma y por eso no me lo encuentre con el formato que quiero?.

Gracias de nuevo y espero alguna respuesta.


bengaba81
13 de Mayo del 2004
Para cambiar las fechas al formato sql debes utilizar una funcion como esta a la que le pasas la fecha de dd/mm/aaaa y devuelve #mm/dd/aa#:
Public Function Cambiar_Fecha(fecha As String) As String
'Esta funcion recoge una fecha y la devuelve en modo sql
'#mm/dd/aa#
Dim varano As Integer
Dim vardia As Integer
Dim varmes As Integer
varano = Mid(fecha, 9, 2)
vardia = Mid(fecha, 1, 2)
varmes = Mid(fecha, 4, 2)
nueva = "#" & varmes & "/" & vardia & "/" & varano & "#"
Cambiar_Fecha = nueva
End Function

Orca
13 de Mayo del 2004
Por que no checas el formato de fecha de tu sistema en panel de control configuración regional, debe ser igual a la forma en que desear escribir.

krizall
13 de Mayo del 2004
hola, yo tenia el mismo problema que tu y lo solucione de la siguiente manera
en la base de datos en lugar de meter un campo fecha
utilizo un campo de texto con longitud 10
01/02/2004, por ejemplo y en mi programa declaro una variable de tipo string de longitud 10
a la cual depende de como quira el formato le asigno yo la fecha asi

variable=year(format(date,"0000")) & "/" & month(format(date,"00")) & "/" & day(format(date,"00"))
no recuerdo bien si el format va dentro o fuera de toda la exprecion, pero de esta manera no tengo problemas al buscar una fecha independientemente del formato que tenga el sistema...