Den fejl betyder du får et tomt recordset, enten fordi databasen er tom eller fordi der ikke er nogle records som lever op til det du sprøger efter i WHERE delen af SQL'en.. Det er altid godt at tjekke for om man har et tomt recordset inden man udskriver.:
strSQL = "SELECT * FROM [Timesheet_line] WHERE [DATE1] >= " & fra & " AND [DATE2] <= " & til & " ORDER by DATE1 ASC"
set rs = Connection.Execute(strSQL)
'Tjek om rs er tomt if not rs.EOF then 'Recordset er ikke tomt, så der kan udskrives med eksvis et loop do while not rs.EOF
rs.movenext loop else 'Recordset er tomt Response.write "Ingen data fundet" end if
Det er korrekt som eagleeye siger omkring fejlmeddelelsen (husk RS.EOF) - men du kan ikke regne med at en tildeling af variablene fra og til kan bruges i en SQL-sætning.
Dim fra, til
fra = 02-01-2003 til = 09-02-2003
ovenstående skal laves om til:
fra = "2003-01-02" til = "2003-02-09" Du kan ikke regne med det format du ser i Access DD-MM-YYYY. Det er ikke et udtryk for at datoerne er gemt i Access på denne måde. Alle datoer er gemt ens (binært) i Access i et format som vi ikke kan bruge direkte. Hvordan datoer vises i access kan jo sættes op.
og så skal du have # omkring datoerne i SQL-sætningen som ramnir skriver.
En anden ting som spotgun også har nævnt hvis du har dato/klokkeslæt format i databasen så skal der # omkring i SQL sætningen. Via SQL bliver dato tolket som US/UK format yyyy-mm-dd eller mm-dd-yyyy, hvis du overføre DK format vil den bytte rundt på månede og dag. Jeg vil anbefale at bruge yyyy-mm-dd da det virker. Du kan let formatere en dato med year, month og day functionerne.
Tak for svarene og undskyld mine langsomme reaktionstid
Synes godt om
Ny brugerNybegynder
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.