webForumDet fria alternativet
Logga in / Bli medlem

RecordSet, Database or object is read-only.

ASP

2 svar · 366 visningar · startad av Donatello

Medlem sedan jan. 2005108 inlägg
Trådstart#1

Nu har jag försökt få det här att funka i två timmar och enligt alla guider jag har läst, så ska det göra det. Men icke...

<!-- #include virtual = "/adovbs.inc" -->
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/mapp/databas.mdb")

set RecSet = Server.CreateObject("ADODB.Recordset")

add_db = "SELECT * FROM " & Request.Form("option0")

RecSet.Open add_db, Conn, adOpenStatic, adLockOptimistic
RecSet.AddNew

RecSet("option1") = Request.Form("option1")
RecSet("option2") = Request.Form("option2")
RecSet("option3") = Request.Form("option3")
RecSet("option4") = Request.Form("option4")
RecSet("option5") = Request.Form("option5")
RecSet("option6") = Request.Form("option6")

RecSet.Update
RecSet.Close
Conn.Close
%>

Hela tiden får jag felmeddelandet

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] Cannot update. Database or object is read-only.

/add_process.asp, line 21

Jag vet att jag har både läs och skrivrättigheter i katalogen där databasen ligger. Jag ringde till och med nyss till webbhotellet och dubbelkollade det med dom.

Nån som ser om det är nåt fel i koden? x(

Medlem sedan juni 200032 967 inlägg
#2

Du borde inte kunna lägga till data med .addnew eftersom du öppnar recordsetet med cursortypen adOpenStatic.

Jag föreslår följande:

  1. Byt anslutning till OLEDB
  2. Byt cursortyp till adOpenDynamic eller lägg till data mha en INSERT och skippa recordsetet helt. Jag hade valt det senare.

http://www.devguru.com/technologies/ado/quickref/recordset_open.html

mvh

Medlem sedan jan. 2005108 inlägg
#3

Funkar prima. Tack. :)

368 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
124 ms — deklarationer (db)
113 ms — hämta statistik (db)
129 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)