Avatar billede anders159 Nybegynder
30. marts 2003 - 22:11 Der er 15 kommentarer og
1 løsning

Dato og access

Har problemer med noget datobehandling.

jeg bruger kort datoformat i en access-database og der er ingen problemer når jeg læser ind.

når jeg så igen henter data ud i en "select" og vælger en fra listen, kan den ikke finde den.

når jeg tester outputtet fra strDD=Date og databaseudtrækket er det fuldstændigt ens(dd-mm-yy), alligevel virker de ikke ved sammenligning.

her er lidt af koden.

strD = request.form("dato")
strDD = date

if strD < strDD then

 
StrSQL = "DELETE * From Mødeliste WHERE Dato = '"&strD&"' "

Conn.Execute(strSQL)
end if

Conn.Close
Set Conn = Nothing'

håber nogen har et bud..
Avatar billede hossein Nybegynder
30. marts 2003 - 22:16 #1
Har du prøvet at sætte <%session.LCID = 1030 %> på toppen af din side?
Avatar billede ellebaek Nybegynder
30. marts 2003 - 22:21 #2
StrSQL = "DELETE From Mødeliste WHERE Dato LIKE '"&strD&"'"
Avatar billede hossein Nybegynder
30. marts 2003 - 22:29 #3
dato giver altid problemer, men hvad med denne linie måske du skal konvertere det:
strD = cdate(request.form("dato"))
if strD < date() then
Avatar billede ellebaek Nybegynder
30. marts 2003 - 22:32 #4
jeg bruger: trim(Request.Form("Dato"))

dette virker hos mig...
Avatar billede oasen Nybegynder
30. marts 2003 - 22:41 #5
StrSQL = "DELETE * From Mødeliste WHERE Dato = #"&strD&"#"
Avatar billede hossein Nybegynder
30. marts 2003 - 22:44 #6
du kan måske klare det uden if sætningen:
StrSQL = "DELETE * From Mødeliste WHERE Dato = '"&strD&"' and dato < date() "

også prøv med at sætte en gang med #: ....Dato = #"&strD&"#" and dato < date() "
Avatar billede anders159 Nybegynder
31. marts 2003 - 21:28 #7
Ja der var jo lidt at prøve, men intet virkede.

fejlmeldingen er: Data type mismatch in criteria expression.
Avatar billede ellebaek Nybegynder
31. marts 2003 - 21:30 #8
StrSQL = "DELETE From Mødeliste WHERE Dato LIKE '#" & strD&"#'"
Avatar billede anders159 Nybegynder
01. april 2003 - 17:03 #9
Ja så kom vi lidt nærmere. Når jeg bruger like i SQL sætningen kan den godt finde den valgte dato i DB'en.

Problemt er dog at dette er testen til en automatisered dato function, hvor maskinens dato er udgangs punket.

Når jeg kalder "Date" får jeg en dato i kortformat 01-04-03

hvis jeg så f.eks skriver  (If Date = "01-04-03" then) er der ingen problemer

men skifter jeg strengen ud med variablen strD, som efter outputtet at dømme indeholder det samme, virker det ikke.
Avatar billede anders159 Nybegynder
01. april 2003 - 17:15 #10
har lige prøvet lidt mere...og nu bliver det rigtigt mærkeligt.

HER ER FAKTA:

strD = Request.Form("dato")    '"01-04-03"

If date = "01-04-03" Then  -----> dette virker

If strD = "01-04-03" Then  -----> dette virker

If strD = date  Then  -----> dette virker IKKE

Håber virkeligt nogen har et godt bud på dette

Ps. dette er ikke en aprilsnar....men bare datoen idag :)
Avatar billede ellebaek Nybegynder
02. april 2003 - 14:34 #11
det her virker hos mig...
<%
if request.form("send") <> "" then
dato = request.form("dato")
strD = "01-04-03"

if dato = "01-04-03" then
response.write("dato er ens<br>")
else
response.write("dato er ikke ens<br>")
end if

if strD = "01-04-03" then
response.write("dato er ens<br>")
else
response.write("dato er ikke ens<br>")
end if

if dato = strD then
response.write("dato er ens<br>")
else
response.write("dato er ikke ens<br>")
end if
end if
%>
Avatar billede ellebaek Nybegynder
02. april 2003 - 14:35 #12
<form method="post" ACTION="datotest.asp">
<input type="text" NAME="dato">
<INPUT type="submit" name="send">
</form>

formen jeg tester efter...
Husk når du skriver datoen ind skal du ikke bruge "" omkring den...
Avatar billede anders159 Nybegynder
03. april 2003 - 12:04 #13
hej ellebæk. Det du kommer med der er desværre ikke nyt. Det der ikke virker er functionen(date)
If date = "01-04-03" Then  -----> dette virker

If strD = "01-04-03" Then  -----> dette virker

If strD = date  Then  -----> dette virker IKKE
Avatar billede anders159 Nybegynder
03. april 2003 - 18:25 #14
jeg lukker denne
Avatar billede anders159 Nybegynder
03. april 2003 - 18:28 #15
men skylder dig alligevel nogle få point ellebæk for din indsats .)  men fik afvist dig, så skriv lige igen.
Avatar billede ellebaek Nybegynder
03. april 2003 - 19:19 #16
opret et nyt spg. hvis du synes jeg skal have point..
Jeg har fundet en løsning, godt nok er det lidt slamkode, men det virker :-)
if day(date) = day(dato) AND month(date) = month(dato) AND year(date) = year(dato) then
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
Kurser inden for grundlæggende programmering

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