jag har ett fält i en databas. ett tal vilket representerar antalet nya mail man fått skickade till sig. när någon skickar ett mail till en person ska den här siffran ökas med 1 så att sedan när personen loggar in kan han se hur många nya mail han har fått. jag har trixat lite med hur jag ska göra så att det läggs på 1, men jag vet inte hur jag ska göra det. måste jag först hämta ut strängen från databasen, lägga på ett och sen stoppa in i databasen eller kan jag skriva nånting så det bara läggs på 1?
jag vet faktiskt inte vart jag ska posta. vet inte alls hur jag ska skriva så ibland får jag felmeddelanden som att den inte är declarad... kan lägga in koden.
sub loggain()
Dim cn as new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=E:\Inetpub\databaser\loggin.mdb;")
Dim cmd as new OleDbCommand("UPDATE users SET [B]logins = logins +1[/B] senast = '" & now() & "' WHERE nick='" + session("userid") + "' ",cn)
cn.open()
Cmd.ExecuteNonQuery()
cn.close()
response.Redirect("news.aspx")
end sub
där det är fetstil(förhoppningsvis) logins... ska öka med en varje gång man loggar in... hur ska jag skriva så att det plusas på en? vart ska citationstecknen vara? vilken typ? ' eller "? ska man använda & ? osv.. hjälp! :q
jag vet faktiskt inte vart jag ska posta. vet inte alls hur jag ska skriva så ibland får jag felmeddelanden som att den inte är declarad... kan lägga in koden.
sub loggain()
Dim cn as new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=E:\Inetpub\databaser\loggin.mdb;")
Dim cmd as new OleDbCommand("UPDATE users SET [B]logins = logins +1[/B] senast = '" & now() & "' WHERE nick='" + session("userid") + "' ",cn)
cn.open()
Cmd.ExecuteNonQuery()
cn.close()
response.Redirect("news.aspx")
end sub
där det är fetstil(förhoppningsvis) logins... ska öka med en varje gång man loggar in... hur ska jag skriva så att det plusas på en? vart ska citationstecknen vara? vilken typ? ' eller "? ska man använda & ? osv.. hjälp! :q
@nders SQL skall fungera,. Det du verkar ha missat är att du använder + i stället för & när du skall infoga userid. Eftersom MS Access används som databas har jag för mig att datum skall skrivas på följande sätt ex #2004-06-08 13:37:00#. Raden för att skapa Command bör därför bli något liknande nedan:
Dim cmd as new OleDbCommand("UPDATE users SET logins = logins +1, senast = #" & DateTime.Now() & "# WHERE nick = '" & session("userid") & "'",cn)
Om du fortfarande får fel, var vänlig skicka med felmeddelande.
jag löste felet. felet var inte att jag skulle ha # och inget med " eller '. Felet var så simpelt som att jag skulle ha , mellan de olika sakerna som skulle update:as... det var tur att du skrev det i din kodsnutt renholm... annars hade jag aldrig löst det.. ;)
kod:--------------------------------------------------------------------------------
Dim cmd as new OleDbCommand("UPDATE users SET logins = logins +1**,** senast = #" & DateTime.Now() & "# WHERE nick = '" & session("userid") & "'",cn)
--------------------------------------------------------------------------------
129 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe