Avatar billede riishoj Nybegynder
25. oktober 2003 - 11:16 Der er 16 kommentarer og
1 løsning

Hjælp til SQL

Er der nogen som kan hjælpe med at lave om på nedenstående script, så sql'en kun bliver udført i en bestemt periode f. eks. fra 01.08.03 til 19.12.03. Jeg er godt klar over, at jeg skal have tilføjet et par poster i db'en, men kan ikke finde ud af at få det skrevet ind i sql'en. Jeg har også leget lidt med datofunktionen i access, men det kan jeg heller ikke få til at virke.

-----------------
strSQL = "SELECT dag,tekst,lektion FROM ebberup_blokering WHERE reservation='fysik' AND dag='" & SQLdag(dag) & "' AND lektion='" & lektion & "'"
set rs = Conn.Execute(strSQL)

if not (rs.EOF or rs.BOF) then
Response.write"<td border=1  bordercolor=#0000FF bordercolordark=#FFFFFF bordercolorlight=#0000F width=18% height=40 bgcolor=red><font face=Verdana size=1 color=#FFFFFF><p align=center>"&rs("tekst")&"</font></td>" 
 
-------------------
Avatar billede mnoer Nybegynder
25. oktober 2003 - 18:47 #1
Jeg går ud fra at det er i ASP du laver det da det er her du har spurgt...
Kan du ikke bare lave en test før du udfører SQL sætningen?

if datoNu < minTilladtDato and datoNu > maxTilladtDato then
  udfør SQL
else
  gør noget andet
end if
Avatar billede riishoj Nybegynder
25. oktober 2003 - 19:02 #2
Jo, men jeg vil gerne have minDato og maxDato som variabler, som også hentes i db'en, og det kan jeg ikke helt hitte ud af at implementere.
Avatar billede mnoer Nybegynder
25. oktober 2003 - 20:18 #3
Set RsDato = Conn.Execute("Select minDato, maxDato From tabel")

Set Rs = Conn.Execute("Select * From tabel Where now() < "&RsDato("minDato")&" And now() > maxDato")

noget i den stil eller hvad?
Avatar billede mnoer Nybegynder
25. oktober 2003 - 20:19 #4
hov den sidste maxDato skulle være "&RsDato("maxDato")&"
Avatar billede riishoj Nybegynder
25. oktober 2003 - 20:56 #5
Ja, det er nok noget i den stil, men jeg skal stadig have det sat sammen med det jeg havde i forvejen! Kan du overskue det?
Avatar billede mnoer Nybegynder
25. oktober 2003 - 20:58 #6
strSQL = "SELECT dag,tekst,lektion FROM ebberup_blokering WHERE reservation='fysik' AND dag='" & SQLdag(dag) & "' AND lektion='" & lektion & "' AND now() < "&RsDato("minDato")&" And now() > "&RsDato("maxDato")&""
set rs = Conn.Execute(strSQL)
Avatar billede mnoer Nybegynder
25. oktober 2003 - 20:58 #7
tror jeg
Avatar billede mnoer Nybegynder
25. oktober 2003 - 20:58 #8
hvilken DB bruger du?
Access?
Avatar billede riishoj Nybegynder
25. oktober 2003 - 21:04 #9
Ja, jeg bruger Access. Det ser meget fornuftigt ud. Jeg prøver lige at lave de 2 poster minDato og maxDato i db'en og tester resultatet.
Avatar billede mnoer Nybegynder
25. oktober 2003 - 21:06 #10
ok :)
Avatar billede riishoj Nybegynder
25. oktober 2003 - 21:38 #11
Desværre virker det ikke. Får fejl på RsDato. Jeg har prøvet at lave dette her. Det virker ikke, men scriptet bliver kørt uden fejl.

strSQL = "SELECT dag,tekst,lektion FROM ebberup_blokering WHERE reservation='fysik' AND dag='" & SQLdag(dag) & "' AND lektion='" & lektion & "' AND Date() >'" & minDato & "' And Date() < '" & maxDato & "'"
set rs = Conn.Execute(strSQL)
Avatar billede mnoer Nybegynder
25. oktober 2003 - 22:20 #12
hvor har du max og min dato liggende?
Avatar billede riishoj Nybegynder
25. oktober 2003 - 22:26 #13
I tabellen ebberup_blokering
Avatar billede mnoer Nybegynder
25. oktober 2003 - 22:28 #14
hvad hedder din RsDato sætning, og har du sat felterne til at være dato fælter?
Avatar billede mnoer Nybegynder
25. oktober 2003 - 22:30 #15
hvis du ike finder ud af det vil jeg prøve at hjælpe dig videre i morgen :)
Avatar billede riishoj Nybegynder
25. oktober 2003 - 22:39 #16
Nej, det er almindelige tekstfelter. Jeg kommer i tanke om, at man vist nok skal bruge # i forbindelse med datofelter. Kan bare ikke huske hvordan? Prøver mig lidt frem. Fint hvis du hænger på i morgen. Tak for hjælpen so far.
Avatar billede riishoj Nybegynder
10. november 2003 - 15:58 #17
Lukker spørgsmålet.
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