Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

ASP - datum problemen met recordset

Anoniem
Johant
3 antwoorden
  • Ik heb een TV-gids gemaakt die opgebouwd wordt uit een Access2000-database.

    De TV-gids tabel bestaat uit 2 delen:

    deel 1: Wat is er op TV vandaag
    deel 2: wat komt er de komende weken op TV

    zie: http://www.jachtluipaard.nl/decheetah_tv-gids_new.asp

    —–
    deel 1.

    Bij deel 1 heb ik een sql-statement nodig die alleen de records uit de database haalt van vandaag. In de database is de notatie voor de data:

    dd-mm-jjjj

    In de database staan 2 records die de datum van vandaag hebben.
    Ik gebruik de volgende sql-statement, maar er komt niets uit de database:

    [code:1:a82654f221]
    ' Our SQL statements
    Vandaag = Date()
    Dag = Day(Vandaag)
    Maand = Month(Vandaag)
    Vandaag = Dag & "-" & Maand

    sql = "SELECT * FROM tblTvGids WHERE Datum = " & Vandaag & " "
    set Rs = con.Execute(sql)
    [/code:1:a82654f221]

    Wat doe ik verkeerd?

    —–
    deel 2

    Bij deel 2 heb ik een sql-statement nodig die alleen de records uit de database haalt van na vandaag. In de database is de notatie voor de data:

    dd-mm-jjjj

    In de database staan +10 records die de datum van na vandaag hebben.
    Ik gebruik de volgende sql-statement, maar de database geeft nu alle records terug:

    [code:1:a82654f221]
    Vandaag = Date()

    sql = "SELECT * FROM tblTvGids WHERE Datum > " & Vandaag & " "

    set Rs = con.Execute(sql)
    [/code:1:a82654f221]

    Wat doe ik verkeerd?
  • Als je je eerste query naar het scherm schrijft zal je zien waarom je niets terugkrijgt:
    SELECT * FROM tblTvGids WHERE Datum = 19-10

    Er is natuurlijk geen enkele row die daaraan voldoet. Zoals je zelf al aangaf wordt in de access database ook het jaartal opgeslagen en deze vergeet je in je query.

    In Access kan je overigens gewoon VBA gebruiken, dus een commando als Date() werkt gewoon. Onderstaande queries zullen wel doen wat je wil:

    sql = "SELECT * FROM tblTvGids WHERE Datum = Date()"
    sql = "SELECT * FROM tblTvGids WHERE Datum > Date()"


    p.s. Datum notatie binnen een query in Access is als ik me niet vergis #dd-mm-jjjj# of 'dd-mm-jjjj'.
  • bij mij is het dd-mm-yyyy
    heeft er misschien niets mee te maken…

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.