Format de date incorrect d'accès MS-Access lors de la conversion de champ de texte en date / heure

StackOverflow https://stackoverflow.com/questions/1008042

Question

J'ai une base de données d'accès qui m'a été donnée où toutes les dates sont stockées dans un texte champ au format mm / jj (par exemple: 13/03/2009 12:20:36 AM)

Je souhaite convertir le champ en date / heure mais access le formate en jj / mm, ce qui fait en sorte que si le jour est plus grand que 12 ou non la date convertie pourrait avoir tort.

Exemple avec le format actuel stocké sous forme de texte dans la base de données:

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

Si je convertis simplement le type de données de ce champ à partir de la vue Conception de la table de texte en date / heure type de date j'obtiens ce qui suit:

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

Comment pourrais-je régler les valeurs stockées? Je ne me soucie pas beaucoup du format dans lequel les dates seront affichées car je serai capable pour changer facilement à quoi il ressemble, mais les obligeant à convertir correctement du texte à la date / heure s’est révélée délicate.

Préférable, je souhaiterais résoudre ce problème directement, mais je peux le faire à partir de C # si nécessaire.

Merci.

Était-ce utile?

La solution

S'il s'agit d'une application Access locale, elle utilise le format de date / heure de votre système. Par conséquent, si vous modifiez vos paramètres de localisation sous Windows pour utiliser MM / DD, Access sera ainsi converti de cette façon, à moins que cette option n'ait été remplacée dans l'application.

Autres conseils

Format (CDate ("3/13/2009 11:32:40 PM"), "mm / jj / aaaa" vous indiquera le 13/03/2009

Vous avez de bonnes réponses à votre problème immédiat, mais vous semblez utiliser votre système au format dmy. Vous devez donc être conscient de ce qui suit.

Les instructions SQL exigent que les dates soient complètement non ambiguë ou au format mm / jj / aa, ou mm / jj / aaaa. Sinon, Access / Jet fera de son mieux pour interpréter la date avec des résultats inconnus en fonction de la date à laquelle elle travaille. Vous ne pouvez pas supposer que le système sur lequel vous travaillez utilise ces formats de date. Vous devez donc utiliser la logique de la page Web suivante.

Dates de retour au format US # mm / jj / aaaa # http://www.mvps.org/access/datetime/date0005.htm

La fonction d'importation dans Access dispose d'une fonctionnalité d'analyse de date décente et vous permet de spécifier plusieurs formats. Vous ne savez pas exactement comment appliquer cela à quelque chose qui existe déjà dans Access - un moyen rapide peut être de copier les données dans Excel, puis de les réimporter.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top