kanske något sådant här:
DELETE FROM tabellen WHERE messId = " & request.querystring("messId") & "
AND messId NOT IN (SELECT TOP 15 messId FROM tabellen
WHERE messId = " & request.querystring("messId") & "
ORDER BY messId ASC)
12 svar · 247 visningar · startad av insu
Tja!
Har ett litet forum, man måste logga in för att använda forumet, nu är det så att jag har även en liten funkton som sparar alla användare som läser inlägg, så den som har skrivit inlägget vet vem som har läst det.
Jag vill skapa ett script som raderar den 15 läsaren bakifrån, så att det alltid är max 15st från ett inlägg i databasen.
Hur gör jag då?
kanske något sådant här:
DELETE FROM tabellen WHERE messId = " & request.querystring("messId") & "
AND messId NOT IN (SELECT TOP 15 messId FROM tabellen
WHERE messId = " & request.querystring("messId") & "
ORDER BY messId ASC)
Ska testa
OBS! Gjorde en liten redigering, se ovan.
Hmmmm....
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Missing ), ], or Item in query expression 'usr = 245 AND usr NOT IN (SELECT TOP 15 usr FROM besokare WHERE usr = 245 ORDER BY id ASC'.
Nu förstår jag....
Tyvärr raderar den nada...
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open("DRIVER={Microsoft Access Driver (\*.mdb)}; DBQ=" & Server.MapPath("../db/usr_statistik2.mdb"))
Uppdatera = "DELETE FROM besokare WHERE usr = " & request("id") & " AND usr NOT IN (SELECT TOP 15 usr FROM besokare WHERE usr = " & request("Id") & " ORDER BY id ASC)"
Connect.Execute(Uppdatera)
Connect.Close
Set Connect = Nothing
%>
Hur är din tabell definerad?
usr = forum id
Jag vill veta alla kolumner. Det där säger ingenting.
("id") = id
("usr") = Inlägg id
("besokare") = användar id som besöker inlägget
("Dag") = Date
("Klocka") = Time
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/usr_statistik2.mdb"))
Uppdatera = "DELETE FROM besokare WHERE usr = " & request("id") & " AND id NOT IN (SELECT TOP 15 id FROM besokare WHERE usr = " & request("Id") & " ORDER BY id desc)"
Connect.Execute Uppdatera