Avatar billede dhgpower Nybegynder
18. september 2003 - 22:50 Der er 12 kommentarer og
1 løsning

Korrekt tid

Hej!

Jeg har en masse felter:

MandagSTART - MandagSLUT
osv... indtil SoendagSlUT

Tiden indholder tid i formaet hh:mm i en microsoft access database.

Jeg skal nu bede den hente start og sluttid fra korrekt dag - dagen er fundet meeen virker ikke helt.

Bruger denne kode:
strSQL = "SELECT * from annoncer where id = " & annonceid & ""
strSQL = strSQL & " AND ((#" & st_tid & "# BETWEEN "&mydayli&"start and "&mydayli&"slut) OR (#" & st_tid & "# < "&mydayli&"start) OR (#" & st_tid & "# >

"&mydayli&"start))"


Hvordan kan jeg gøre så den kun finder dem med korrekt ID og hvis "tiden er godkendt" ??
Avatar billede eagleeye Praktikant
18. september 2003 - 22:56 #1
hvordan ser st_tid ud??
Og er kolonnen af typen date/time?
Avatar billede eagleeye Praktikant
18. september 2003 - 23:03 #2
Hvis du søger efter korrekt ID så virker det lidt underligt du har

where id = " & annonceid & ""

Så ligger du dig jo fast på et beskemt ID i selv søgningen og den vil maximalt kun finde det ene ID hvis tiden passer...

Så skal det ikke være sådan her uden ID:

strSQL = "SELECT * from annoncer where "
strSQL = strSQL & " ((#" & st_tid & "# BETWEEN "&mydayli&"start and "&mydayli&"slut) OR (#" & st_tid & "# < "&mydayli&"start) OR (#" & st_tid & "# >

"&mydayli&"start))"
Avatar billede netro Nybegynder
18. september 2003 - 23:11 #3
Du skal ikke have # # omkring dine variable kolonnenavne.
Avatar billede netro Nybegynder
18. september 2003 - 23:14 #4
Og så husk at undgå brug af dansk datoformat!

Anvend enten MM-DD-YYYY eller endnu bedre YYYY-MM-DD.
Avatar billede dhgpower Nybegynder
19. september 2003 - 06:49 #5
Hej

Jeg har tiden st_tid som har værdien "hh:mm" eks. 06:50

Grunden til jeg har søgning efter ID sammen med den tidstjek er at bagefter sig jeg

if NOT rs.eof then
' personen er online
end if


Hjalp det?
Avatar billede eagleeye Praktikant
19. september 2003 - 10:49 #6
Både ja og nej...

Hvis din kolonne id er autonummer i tabellen, er der kun en rækker med det id. Når du så søger og annonceid er eksvis 1 så vil den kun kigge om tiden passer for den rækker hvor ID=1. Derfor kan din SQL max give en post eller ikke nogen.
Avatar billede eagleeye Praktikant
19. september 2003 - 10:50 #7
Din SQL sætning fejler så vidt jeg kan ikke noget og den vil virke. Det enste problem jeg kan se er det med ID...
Avatar billede dhgpower Nybegynder
19. september 2003 - 12:47 #8
eagleeye >> jamen det er også meningen at den enten skal finde en eller ikke finde nogen - det er jo netop der ideen ligger !!

men ved ikke hvordan man skal gøre dt ??!
Avatar billede eagleeye Praktikant
19. september 2003 - 19:24 #9
Ok ;)
Kan du så ikke uddybe, spørgsmålet: Jeg skal nu bede den hente start og sluttid fra korrekt dag "?
Avatar billede dhgpower Nybegynder
19. september 2003 - 20:04 #10
Altså hvis du bare kan gøre så den henter alle fra en database hvor aktuel tid ligger mellem "start" og "slut" tabelfetlerne.??!
Avatar billede eagleeye Praktikant
19. september 2003 - 20:09 #11
Prøv dette hvis mandagStart < 12:45 og mandagSlut > 12:45 så finden den de records hvor annonceid = 1

mydayli = "mandag"
st_tid = "12:45"
annonceid = 1

strSQL = "SELECT * from annoncer where id = " & annonceid & ""
strSQL = strSQL & " AND ((#" & st_tid & "# BETWEEN "&mydayli&"start and "&mydayli&"slut))"
Avatar billede dhgpower Nybegynder
19. september 2003 - 20:13 #12
Jo lige umiddelbart virker det :)

Tak, smidt et svar.... !
Avatar billede eagleeye Praktikant
19. september 2003 - 20:14 #13
Ok ;)
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