Avatar billede dj-sejler Praktikant
20. august 2004 - 22:17 Der er 9 kommentarer og
1 løsning

funktion der kun skal kigge i acces-dben

Hej... jeg er ved at lave en kalender, hvor jeg skal bruge en funktion hvor jeg kun skal kigge i databasen, men jeg kan ikke få det til at virke.

det er sådan at jeg har en dato, der bliver generet på siden, på formen: dd-mm-åååå
og to dato i access databasen på samme form:

Jeg havde så tænkt at jeg for hver dag i måneden skulle "Se" om der var noget i databasen.

havde tænkt på følgende:

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM kalender where bid = '"& session("netid") &"' and ((fradato <= #"& dtmCurDate &"# and #"& dtmCurDate &"# <= tildato) or fradato = #"& dtmCurDate &"#)"
Response.write strSQL
rs.Open strSQL, strDSN, 1
if not rs.EOF then
response.write "test"
end if
rs.Close
Set rs = Nothing

Men det virker ikke rigtig...
er der nogen der kan hjælpe?
Avatar billede eagleeye Praktikant
20. august 2004 - 22:23 #1
Hvis dtmCurDate har formatet dd-mm-åååå skal det laves om til enten mm-dd-åååå eller åååå-mm-dd da det er krævet via SQL. HVis man bruge DK format vil en bytte rundt på dag og måned.

Du kan formatere det med Year, Month og Dat funktionerne

Set rs = Server.CreateObject("ADODB.RecordSet")
datoStr= Year(dtmCurDate) &"-"& Month(dtmCurDate) &"-"& Day(dtmCurDate)
strSQL = "SELECT * FROM kalender where bid = '"& session("netid") &"' and ((fradato <= #"& datoStr &"# and #"& datoStr &"# <= tildato) or fradato = #"& datoStr &"#)"
Response.write strSQL
rs.Open strSQL, strDSN, 1
Avatar billede dj-sejler Praktikant
20. august 2004 - 22:33 #2
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

det er den fejl jeg får... ved ikke rigtig hvad det kan betyde... jeg syntes ikke der er nogen fejl
Avatar billede eagleeye Praktikant
20. august 2004 - 22:37 #3
Så prøv koden fra spørgsmål og prøv at vise den SQL sætning du får udskrevet.
Avatar billede dj-sejler Praktikant
20. august 2004 - 22:42 #4
Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM kalender where bid = '"& session("netid") &"' and ((fradato <= #"& ConvertToSqlDate(dtmCurDate) &"# and #"& ConvertToSqlDate(dtmCurDate) &"# <= tildato) or fradato = #"& ConvertToSqlDate(dtmCurDate) &"#)"
Response.write strSQL
rs.Open strSQL, strDSN, 1
if not rs.EOF then
response.write ConvertToSqlDate(dtmCurDate)
end if
rs.Close
Set rs = Nothing

SQL-udskrift:
SELECT * FROM kalender where bid = '1' and ((fradato <= #01/08/2004# and #01/08/2004# <= tildato) or fradato = #01/08/2004#)

Fejl:
ADODB.Recordset error '800a0bb9'

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.
Avatar billede eagleeye Praktikant
20. august 2004 - 22:44 #5
Har du en connection streng som hedder strD0?
Avatar billede eagleeye Praktikant
20. august 2004 - 22:44 #6
hmmm
Har du en connection streng som hedder strDSN ?
Avatar billede dj-sejler Praktikant
20. august 2004 - 22:48 #7
UPS... :D

der var ' foran
men der kommer sikkert flere problemer, så venter lige med at lukke... hvis det er ok!?
Avatar billede eagleeye Praktikant
20. august 2004 - 22:49 #8
Helt i orden.
Avatar billede dj-sejler Praktikant
21. august 2004 - 02:01 #9
jeg klare det sku... så smid et svar...
Avatar billede eagleeye Praktikant
21. august 2004 - 02:01 #10
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