27. juli 2010 - 17:50 Der er 4 kommentarer og
1 løsning

Forkerte datoer i tabellen.

Jeg faar datoer der er 8 dage og 116 aar for gamle indsat i min tabel.  For eksempel hvis jeg skal have 27-7-2010 faar jeg 19-7-1894.  Det er et problem der er opstaaet i loebet af dagen.  I morges fik jeg de rigtige datoer i tabellen.

Jeg har en tekstbox txtDatumAanwezig hvor jeg kan definere en dato eller som jeg kan lade vaere tom.  Med koden

Dim datum As Date
datum = IIf(IsDate(Me.txtDatumAanwezig), Me.txtDatumAanwezig, Date)

lader jeg datum enten vaere den indsatte dato eller dags dato.  Jeg bruger datum til at indsaette en dato som et element i en raekke i en tabel. 

For at teste har jeg indsat denne kode i funktionen:

Dim d As Date
d = Me.datum 

og naar jeg debugger kan jeg se at vaerdien af d er #27-7-2010# (hvis jeg har valgt dags dato.)  Men dog bliver vaerdien 19-7-1894 indsat i tabellen.

Har nogen kendskab til noget lignende og kan forklare hvad der maa vaere gaaet galt og hvordan jeg faar det rettet?
Avatar billede terry Ekspert
27. juli 2010 - 19:05 #1
If you try inserting the date with SQL in the ISO format (YYYY-MM-DD) do you get the same result?
Avatar billede terry Ekspert
27. juli 2010 - 19:07 #2
" Det er et problem der er opstaaet i loebet af dagen.  I morges fik jeg de rigtige datoer i tabellen"

And uyou have made no alterations?
27. juli 2010 - 20:06 #3
Terry, you did not give me the solution, but once again you inspired me to look in the right direction. 

After having defined g and p as two integers, groupid and personid, and, as said above, defined d to be #27-7-2010# I wrote this code:

DoCmd.RunSQL "INSERT INTO Aanwezig(group, datum, persoon) VALUES(" & i & ", " & d & ", " & p & ")"

But although d displays a value including the two #s, the command still requires the #s inserted, thus:

DoCmd.RunSQL "INSERT INTO Aanwezig(groep, datum, persoon) VALUES(" & i & ", #" & d & "#, " & j & ")"

Shall we share the points?  Make a 'svar' please.

(What I want for Christmas is a computer that executes the code I intend, not just the code I write!)
Avatar billede terry Ekspert
27. juli 2010 - 20:40 #4
You keep the points Christian.

Dates are always a problem with databases because of the format used in different countrys.

When inserting dates you should be able to use

'YYYY-MM-DD' not #YYYY-MM-DD#

When you view a date field ## are added for viewing purposes only they are not part of the date value.

And if you can always insert in ISO format then you shouldnt have  too many problems
27. juli 2010 - 21:32 #5
Points: so be it.
Dates: thanks - I keep trying.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester