webForumDet fria alternativet

klurig SQL fråga i Access

1 svar · 230 visningar · startad av MrZEr0

MrZEr0Medlem sedan juni 20039 inlägg
#1

Hej,

håller på med ett besöksräknarscript till en långsam IIS server, vill därför göra en lösning där man räknar besökare per dag, alltså en databaspost per dag (ej en post per besökare som man skulle förespråka på en snabbare server, detta blir ej skoj vi >100 000 besökare).

Vill därför göra följande i Microsoft Access SQL:

(Tabellen ser ut så här: (ID, Datum, Hits))

if (Dagens Datum redan existerar i databasen) then
UPDATE hits SET Hits = hits + 1 WHERE Datum = now();
else
INSERT INTO hits (Hits, Datum) VALUES (0,now());
UPDATE hits SET Hits = Hits + 1 WHERE datum = now();
end if

Mvh

Fredrik Magnusson
http://www.fredrikmagnusson.com

yohpopsMedlem sedan feb. 20011 198 inlägg
#2

Du måste ju fortfarande skicka frågan till accessfilen vid varje träff (vilket tar mycket kraft).
Det är nog bättre att du sätter en applicationvariabel om någon varit inne på sidan idag eller inte.

if not application(date) then
conn.execute("insert into hits (hits,datum) values(0,date())")
conn.execute("update hits set hits=hits+1 where datum = date()")
application(date) = true
end if
133 ms totalt · 3 externa anrop · v20260731065814-full.16f3d68c
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)