MoonCowMedlem sedan juni 2001223 inlägg Tjena!
Försöker bygga ihop en liten community som lunar för att lära mig lite mer innom asp. men... när jag ska skicka ett medelande får jag detta:
ADODB.Recordset (0x800A0CB3)
Current Recordset does not support updating. This may be a limitation of the provider, or of the selected locktype.
/mooncow/skicka_mess.asp, line 11
Vadå "This may be a limitation of the provider" får jag inte skriva till databaser lr?
så här ser min kod ut:
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("databejz.mdb")&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From mess"
RecSet.Open Addera, Connect
RecSet.AddNew
RecSet("motagare") = Request.Form("motagare")
RecSet("mess") = Request.Form("mess")
RecSet("nowen") = now
RecSet("last") = 0
RecSet("fran") = Session("namn")
RecSet.Update
RecSet.Close
Connect.close
Set RecSet = nothing
Set databas = nothing
Response.Redirect "default.asp"
%>
Ovan ska altså skriva ett medelande till en person... ser ni nått fel?
------------------
all your base are belong to us
MoonCowMedlem sedan juni 2001223 inlägg det är altså på rad en där det står:
RecSet.AddNew
som den säger det är fel....
------------------
all your base are belong to us
LarsGMedlem sedan dec. 200012 464 inlägg Felet är att du inte använder SQL.
Om du öppnar ett recordset utan ange locktype så är readonly default.
RecSet.Open Addera, Connect,3,3
------------------
essentitia preter non sans multiplicandum
MoonCowMedlem sedan juni 2001223 inlägg *tackar och bugar*
------------------
all your base are belong to us
LarsGMedlem sedan dec. 200012 464 inlägg Om man använder rs.addnew och sedan rs.update för att göra insert (en tabell med 3 kolumner) så blir det ungefär 50 anrop till databasklienten.
Däremot, om man använder execute med ett insert-statement så blir det 4 anrop.
Ett insert statememt för din tabell skulle kunna se ut som
sql = "insert into mess(motagare,mess,nowen,[last],fran) values ("
sql = sql & "'" replace(Request.Form("motagare"),"'","''") & "','"
sql = sql & "'" replace(Request.Form("mess"),"'","''") & "',now(),0,'"
sql = sql & "'" replace(session("namn"),"'","''") & "')"
connect.execute sql,,128
------------------
essentitia preter non sans multiplicandum
snekkorrMedlem sedan dec. 2000203 inlägg luktar idg kod :)... problemet är att du här --->RecSet.Open Addera, Connect<--- anropar lite juz ;) gör såhär innan koden <!-- #include file="adovbs.inc" --> förutsatt att du har den där :) har alltid samma problem själv §=D
------------------
<% Dim Emil, Carlsson, Bäst
Emil + Carlsson = bäst %>
<%=bäst%>
MoonCowMedlem sedan juni 2001223 inlägg ok.. tack för era svar med... klipper och klistrar mest, är inte superinsatt i kopplingarna... men ska ändra det. Man vill ju bespara servern så mkt så möjligt :)
jo, brukar glömma att inkudera abdobvs.inc :r
------------------
all your base are belong to us
McDMedlem sedan mars 20002 520 inlägg Det behöver du inte göra om du istället sätter in värden i filen...
tex add.optemistic :e har värde 3 enligt abdobvs.inc om du kollar i den... du kan alltså byta ut alla dessa mot sifferkombinationer istället. Bra om du bara använder ett fåtal.
------------------
McD- Burgers for the people!
www.McDz.net www.SweQuake.com