Jeg har en tekstfil med data udtrukket fra en amerikansk database. Denne tekstfil indeholder et dato-klokkeslet i US-format:
mm/dd/yyyy hh:mm:ss AM/PM
eks. den 4. januar 2009 kl. 13:24:22 vises som 01/04/2009 01:24:22 PM
Hvordan importerer jeg dette datafelt som dato/klokkeslet i en MS Access 2003 tabel? (Jeg er egentlig ligeglad med, hvilket datoformat det lander i, bare jeg kan sortere korrekt på det.)
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Formater er fuldstændig ligegyldigt, det er jo blot den måde dine øjne ser data på skærmen. Uanset hvilket format du har, vil data blive lagret på din HD som et decimaltal:
01 JAN 1900 Kl 00:00 = 1 01 JAN 1900 Kl 12:00 = 1,5
og så fremdeles. Så sorteringen burde blive korrekt efter dato- Såfremt Access imnporterer som et tekstfelt, kan du importere til en temp tabel og derefter sende data videre til den endelige tabel med de korrekte datatyper.
Feltet kan importeres som tesktfelt, og derefter hældes over i et datofelt, men så sker der en typekonverteringsfejl, ligesom når man importerer det direkte som datofelt.
Jeg kan godt lave en Cdate() på tekstfeltet, men så bliver alle tider mellem kl 00 og 12, idet converteringen ikke tager højde for AM/PM betegnelsen.
Jeg har lavet en query, som splitter tekstfeltet ad, ændrer time-tallet til 24timers format og samler det i et nyt tekstfelt uden AM/PM betegnelsen. Herefter kan jeg med Cdate() hælde det over i et felt af typen dato.
Men er der ikke en nemmere måde? Kan man ikke gøre det direkte i importspecifikationen? AM/PM er jo trods alt et meget almindelig anvendt format (og Access kan godt finde ud af at konvereter MDÅ til DMÅ, det går helt af sig selv).
Her er første linie i mine importdata (tabdelimited):
Email Address Date Subscribed info@reble.com 04/27/2009 02:47:00 PM
Denne datotekst skulle gerne importeres som '27-04-2009 14:47:00'
/Klaus
Synes godt om
Slettet bruger
01. maj 2009 - 08:28#3
Gå ind i avanceret i importdeklariotion wizarden - her er det muligt at angive felttyper. Kolonnerne i min access 2000 er klistret helt sammen, så man skal vide at det er muligt at trække kolonner frem. Sæt typen til tekst. Når tabellen er importeret - så opret en ny kolonne og opdater vha. en selvskevet funktion: 'update tabel set <newfield>=fix(<feltnavn for datosomtekst>) - slet den gamle kolonne og omdøb evt.
Så er det lige fix - eksperimenter! - måske virker det helt uden funktion: set <newfield>=<feltnavn for datosomtekst>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.