Formato de fecha en access

Yo programo en VB6, y uso ACCESS como base de datos. No utilizo ODBC.
El problema es que cuando guardo una fecha en un campo de una tabla, usando el comando INSERT INTO de SQL, me queda en formato "mm/dd/aaaa" en lugar de "dd/mm/aaaa" que es el que quiero.
Pensé que se debía a la config. Regional de w95, pero por más que la cambie, sigo con el mismo problema.
¿Podrías explicarme como hago para "gobernar" el formato de fechas que debe usar Access?
Espero tu respuesta y gracias desde ya,
Alejandro Rossi Zen
[email protected]
1

1 Respuesta

9.725 pts.
No. No te guarda en formato "mm-dd-aa". Es más grave. En Access las fechas se almacenan como un número real donde la parte entera corresponde a la fecha y al tipo de dato que más se asemeja es al Doble.
El problema es que, mientras Access interpreta que las fechas que tú introduces están en el formato correspondiente a la configuración regional, SQL sólo entiende que el formato sea el americano. Para más complicación, ante meses imposibles (mayores de doce) entiende que puede haber un error y entiende que está cambiado el mes por el día; entonces, resulta que si te ha estado funcionando con días mayores de doce, deja de funcionar cuando es menor.
La solución puede ser distinta según de donde vayas a obtener las fechas para insertar en la consulta, o si la consulta la "construyes" como una cadena de texto. Si la fecha es fija o la tienes que construir, puede resultar bien usar Dateserial() pues te pide por separado mes, día y año, con lo que no hay problema, si la obtienes de un campo Variant, puede resultar mejor CvDate() o CDbl(), y si vas a "cosntruir" la instrucción, prueba con format (fecha. "mm-dd-yy").
Y, si haces como yo, entonces curza los dedos y aguanta la respiración...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas