Jag undrar hur jag med detta kan plocka ut nuvarande månad, dvs att jag har en sida som bara ska visa resultat för den månad som det är idag, i nuläget.
strSQLuppsagning = "SELECT Count(*) As Antal FROM LOG where KATEGORI ='uppsagning' AND PROJEKT ='1' "
I databasen sparas datumformatet som nu(), dvs. 2004-04-20 15:20:13
SELECT Count(*) As Antal
FROM LOG
where KATEGORI ='uppsagning'
AND PROJEKT ='1'
and extract(year from current_date) = extract(year from dateColumn)
and extract(month from current_date) = extract(month from dateColumn)
I databasen sparas datumformatet som nu(), dvs. 2004-04-20 15:20:13
Det hoppas jag att det inte gör utan att det lagras som en timestamp.
Om du använder en kolumn av typen timestamp (datetime i vissa DBMS) så lagras värdet inte i formatet 2004-04-20 15:20:13 utan som ett numeriskt värde.
När du skriver att du lagrar det i formatet 2004-04-20 15:20:13 så fick jag en tanke om att du lagrar det som en sträng och det är det man inte skall göra.
Eftersom det är Access så fungerar inte den SQL-sats som jag skrev (Det är access som inte följer standard.)
SELECT Count(*) As Antal
FROM LOG
where KATEGORI ='uppsagning'
AND PROJEKT ='1'
and year(date()) = year(dateColumn)
and month(date()) = month(dateColumn)
Det viktiga är att dateColumn är av typen date och inte text
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.
/loggning/test.asp, line 101
Kolumnen är i formatet Datum/tid översatt till svenska i Access.
strSQLuppsagning = "SELECT Count(*) As Antal FROM LOG where KATEGORI ='uppsagning' AND PROJEKT ='1' and year(date()) = year(dateColumn) and month(date()) = month(dateColumn)"