MS-access mauvais format de date lors de la conversion de champ de texte date/heure
J'ai une base de données access donné à moi où toutes les dates sont stockées dans un texte
champ dans le format mm/jj (par exemple: 3/13/2009 12:20:36 AM)
Je veux convertir le champ date/heure, mais l'accès formats comme jj/mm qui
qu'il fait en sorte que, si le jour est plus grand que 12 ou pas convertis date pourrait
être mauvais.
Exemple avec le format actuel lorsqu'ils sont stockés en tant que texte dans la base de données:
3/12/2009 11:32:40 PM 3/13/2009 11:32:40 PM
Si j'ai simplement convertir le type de données de ce champ de la vue de conception
de la table à partir du texte date/heure type date-je obtenir suivantes:
03/12/2009 11:32:40 PM 13/03/2009 11:32:40 PM
Comment pourrais-je aller sur la fixation de valeurs stockées?
Je n'ai pas beaucoup de soins sur le format des dates, seront à l'affiche, comme je vais être en mesure
pour changer facilement de quoi il ressemble, mais de les amener à convertir correctement à partir du texte pour
date/heure s'est avéré être délicat.
Préférable que je voudrais corriger d'y accéder directement, mais je peux le faire à partir de C# en cas de besoin.
Grâce.
OriginalL'auteur tb. | 2009-06-17
Vous devez vous connecter pour publier un commentaire.
Si c'est un local d'Accès de l'application, il utilise votre système de la date format de l'heure, de sorte que la modification de vos paramètres de localisation dans Windows pour utiliser MM/JJ va rendre l'Accès à convertir cette façon, à moins que cela a été substituée quelque part dans l'application.
J'espère que c'est une opération d'une fois l'OP est en train de faire. Autres sage, vous êtes juste au sujet de la garantie que l'utilisateur est en passe de changer ses paramètres de date et de rompre l'application.
Les méthodes habituelles pour ce problème sont les suivants: utilisation d'un non-ambiguë format de la date, comme jj-mmm-aaaa (par exemple, 17-Jun-2009) ou de l'utilisation DateSerial. Gardez à l'esprit que Jet SQL interprète non-dates spécifiées dans le formulaire, c'est à dire, mm/jj/aaaa. C'est, bien sûr, désastreux si les paramètres de date dd/mm/yyyy.
OriginalL'auteur kscott
Format(CDate("3/13/2009 11:32:40 PM"), "mm/dd/yyyy" vous donnera 03/13/2009
OriginalL'auteur JeffO
Vous avez de bonnes réponses sur votre problème immédiat, cependant vous semblent être en cours d'exécution de votre système en format dmy. Donc vous devriez être au courant de la suite.
SQL exiger que les dates soit complètement équivoque ou mm/jj/aa ou mm/jj/aaaa. Sinon Access/Jet va faire c'est mieux pour interpréter la date dont on ne connaît pas les résultats en fonction de la date précise, il travaille avec. Vous ne pouvez pas supposer que le système vous travaillez sur l'utilisation de ces formats de date. Ainsi, vous devez utiliser la logique à la page web suivante.
Dates de retour en NOUS #mm/jj/aaaa# format
http://www.mvps.org/access/datetime/date0005.htm
OriginalL'auteur Tony Toews
La fonction d'Importation dans l'Accès a décent date d'analyse de la fonctionnalité, et vous permettra de spécifier un bon nombre de différents formats. Vous ne savez pas comment mieux l'appliquer à quelque chose qui existe déjà dans l'Accès: un moyen rapide peut-être pour copier les données vers Excel, puis les ré-importer.
OriginalL'auteur Erika