Hej! Hej, är du newbie på det så bör du inte ge dig in på detta. Det finns något som heter disconnected recordsets där du alltså kan läsa data från din server, manipulera det, till och med lagra som en fil på din disk och sedan öppna filen och spara ner ändringarna. Hej! Pelle och Johan: Tack för era svar! 1 står för adOpenKeyset och 2 för adLockPessimistic (vilket nog egentligen borde varit 3=adLockOptimistic) Behöver man ange detta om man gör som jag gör, dvs kör separata kommandon för select och update/insert?Ändra poster med Recordset?
Sitter och läser lite om Record Set och data från databasen som lagras i record Setet vid en selectsats.
Fråga:
Kan man via ett Record Set ändra datat i Record Setet och skriva ner den i databasen igen (alltså direkt via Record Setet och inte via en update/insert-sats i Sql).
Jag har alltid trott att man i ett Record Set bara kan lagra data från en selectsats för att kunna presentare det på en asp-sida el likn. Och för att att skriva ner till databasen har jag alltid trott att man måste använda sig av Update eller insert.
Bör kanske tillägga att jag är en "newbie" på detta...
;-)
Vore tacksam om någon kan redogöra lite kring Record Set och vad det kan åstadkomma.
God fortsättning på er allihop förresten!Sv: Ändra poster med Recordset?
När det gäller att arbeta i asp så föreslås att du använder den teknik du berättar, läs, stäng. Därefter posta ändringarna som de kommer.
Din fråga är befogad men fungerar bättre i klassiska vb-applikationer än för att användas för lösningar på nätet.
Hoppas svaret räcker, annars kan du söka på disconnected recordset på nätet och läsa tonvis med information om detta fenomen.Sv: Ändra poster med Recordset?
Du behöver inte använda dej av ett disconnected recordset för att göra uppdateringar, även om du kan det. Du kan alltså köra "connected", se mitt lilla exempel. Även om du kan göra såhär är det effektivare att använda INSERT/UPDATE-satser, men ibland finns det tillfällen då detta är bra.
<code>
On error resume next
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../stats.mdb")
Set RS = Server.CreateObject("ADODB.Recordset")
SQLStmt = "SELECT * FROM stats"
RS.Open SQLStmt, Connection, 1, 2
RS.AddNew
RS("REMOTE_ADDR")=Request.ServerVariables("REMOTE_ADDR")
HTTP_REFERER=Request.ServerVariables("HTTP_REFERER")
RS("Ref_Server")=Left(HTTP_REFERER,InStr(8,HTTP_REFERER,"/"))
RS("Ref_Page")=Right(HTTP_REFERER,Len(HTTP_REFERER)+1-InStr(8,HTTP_REFERER,"/"))
RS("HTTP_USER_AGENT")=Request.ServerVariables("HTTP_USER_AGENT")
RS.Update
RS.Close
End if
Connection.Close
set rs=nothing
set connection=nothing
</code>
/JohanSv: Ändra poster med Recordset?
En liten sak bara...
I Johans exempelkod finns följande rad:
<code>RS.Open SQLStmt, Connection, 1, 2</code>
Vad betyder 1 och 2?
Än en gång tack för hjälpen!
/FredricSv: Ändra poster med Recordset?
/JohanSv: Ändra poster med Recordset?
Har försökt information av vad dessa siffer-konstanter (?) betyder men inte hittat något. HAr du något bra tips på var jag kan hitta det?
Vänligen ,
Fredric