Jag har fixat ihop ett inloggningssystem som fungerar bra. Eftersom jag ska använda detta system på en sida så överförde jag koden till denna sidan (i en annan mapp). Det fungerade inte riktigt som det skulle (blir felmeddelandet under). Okej tänkte jag, efter ett tags pillande med samma felmeddelande gjorde jag en helt ny mapp och drog över alla filerna från den fungerande mappen. Men det blir detta felmeddelande hela tiden, snälla hjälp! Varför?
Feltyp:
Microsoft JET Database Engine (0x80004005)
Operationen måste använda en fråga som kan uppdateras.
/asp/testing/checklogin.asp, line 25
Syftar på denna sql-sats:
strSQL = "UPDATE tblUsers SET fldCount = fldCount -- 1, fldLastVisit = Now WHERE fldUser= '" & strName & "' AND fldPass= '" & strPass & "'"
objConn.Execute strSQL,,128
Sök-funktionen, just det. Kollade där och hittade lite om rättighetsfel på databasen. Man ska alltså ändra rättigheter på databasen genom att högerklicka och välja alla rättigheter va? Konstigt är det iallafall eftersom jag inte har gjort det någon gång innan på databasen. Jaja, ska testa det.
Att skriva -- i en sql-sats är inte att rekommendera, för det betyder kommentar i en del DBMS (och enligt SQL-standard.)
Att en del använder -- i VB-script beror på att + tolkas som strängkonkatenering om inte addenderna är typade.
Att använda ,,128 i en select är inte så bra. Det betyder att man inte skapar något recordset. Det är alltså för allt annat än select och anrop till en stored procedure som man skall använda det.
red: stavfel
------------------ essentitia preter non sans multiplicandum
Egentligen så finns det bara en typ i VB-script som heter variant. En variabel kan dock ha en subtyp t.ex. string eller int. Ett sätt att sätta en subtyp för ett uttryck är att använda någon av de konverteringsrutiner som finns, cstr, clng, cdate mfl. T.ex. så är allt data i ett recordset av subtypen string (tror jag). Man kan ta reda på subtypen för ett uttryck med hjälp av funktionen typename.
Operatorn + kan tolkas olika beroende på vilka subtyper som addenderna har. Om minst en är numerisk så blir det addition annars blir det strängkonkatenering.
Det är därför bättre att använda & för strängkonkatenering då man slipper dessa tvetydigheter.
------------------ essentitia preter non sans multiplicandum
253 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e