Pregunta

Tengo una base de datos de acceso que me da todas las fechas almacenadas en un texto campo en el formato mm / dd (p. ej .: 13/03/2009 12:20:36 AM)

Quiero convertir el campo a una fecha / hora pero el acceso lo formatea como dd / mm que hace que si el día es más grande que 12 o no, la fecha convertida podría estar equivocado.

Ejemplo con el formato actual cuando se almacena como texto en la base de datos:

3/12/2009 11:32:40 PM
3/13/2009 11:32:40 PM

Si simplemente convierto el tipo de datos de este campo desde la vista de diseño de la tabla de texto a fecha / hora tipo de fecha obtengo lo siguiente:

03/12/2009 11:32:40 PM
13/03/2009 11:32:40 PM

¿Cómo haría para arreglar los valores almacenados? No me importa mucho el formato en que se mostrarán las fechas, ya que podré cambiar fácilmente cómo se ve pero lograr que se conviertan correctamente de texto a la fecha / hora ha demostrado ser complicada.

Preferible Me gustaría arreglarlo directamente desde el acceso, pero puedo hacerlo desde C # si es necesario.

Gracias.

¿Fue útil?

Solución

Si se trata de una aplicación de Access local, utiliza el formato de fecha y hora de su sistema, por lo que cambiar la configuración de localización en Windows para usar MM / DD hará que Access se convierta de esa manera, a menos que esto se haya anulado en algún lugar de la aplicación.

Otros consejos

Formato (CDate ("13/03/2009 11:32:40 PM", "mm / dd / aaaa" le dará 13/03/2009

Tiene buenas respuestas sobre su problema inmediato, sin embargo, parece estar ejecutando su sistema en formato dmy. Por lo tanto, debe tener en cuenta lo siguiente.

Las instrucciones SQL requieren que las fechas sean completamente inequívocas o en formato mm / dd / aa o mm / dd / aaaa. De lo contrario, Access / Jet hará lo mejor para interpretar la fecha con resultados desconocidos dependiendo de la fecha específica con la que está trabajando. No puede suponer que el sistema en el que está trabajando utiliza esos formatos de fecha. Por lo tanto, debe usar la lógica en la siguiente página web.

Fechas de devolución en formato US # mm / dd / aaaa # http://www.mvps.org/access/datetime/date0005.htm

La función Importar en Access tiene una funcionalidad de análisis de fechas decente, y le permitirá especificar bastantes formatos diferentes. No estoy seguro de cómo aplicar esto mejor a algo que ya está en Access; una forma rápida podría ser copiar los datos a Excel y luego volver a importarlos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top