webForumDet fria alternativet

Read-Only ??

ASP

13 svar · 206 visningar · startad av jimpa

Medlem sedan jan. 2001361 inlägg
Frågan#1

Hej,

Får upp detta meddelande när jag försöker lägga till en ny post i databasen.

ADODB.Recordset.1 error '80004005'

Recordset is read-only

Hmm, gör jag något fel när jag gör själva databasen då?
Typ någon inställning som man måste göra
för att få alla rättigheter.
Använder MS access 2000.
I såna fall hur ställer man in det?

//m.v.h. Jimpa

Medlem sedan feb. 20005 891 inlägg
#2

Får man se lite kod? :)

------------------
...and you give me my phonecall?

Medlem sedan jan. 2001361 inlägg
#3

Ok, lite kod

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DSN=b1464-crossdata;Password=@01#$hefghhdgmlbfkjdhmpfbce"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM image "
RecSet.Open Addera, Connect

RecSet.AddNew
RecSet("imageID") = Request.Form("imageID")
RecSet("image") = Request.Form("image")
RecSet("imagetext") = Request.Form("imagetext")

RecSet.Update
RecSet.Close
Connect.Close
%>

Medlem sedan juni 200032 967 inlägg
#4

du öppnar ju med en readonly cursor juh!
om du nu prompt ska använda recordet-metoder för att lägga till och ändra data i en tabell måste du när du öppnar recordsetet ange ett par till parametrar.

eftersom jag aldrig gjort det, ty jag använder riktiga ( ;) ) databaser och anrop, så vet jag heller inte hur man gör. ;)

jag har för mig att den ena parametern, den första, brukar kallas adOpenDynamic, och den andra (japp, andra) brukar kallas adLockOptimistic.

kanske, som sagt. casca vet. :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan feb. 20005 891 inlägg
#5

Enligt "default" är cursor'n satt till den "vanliga" statiska, testa att klämma in adOpenDynamic.. :)

Så istället för

RecSet.Open Addera, Connect

Så kläm in

RecSet.Open Addera, Connect, adOpenDynamic, adLockOptimistic

Lycka till mannen :e

r
Tror inte att man behöver köra med någon specifierad postlåsning, om man inte vill ha något annat än default alltså (det är en låsning som innebär att man inte kan ändra något) :)

------------------
...and you give me my phonecall?

[Redigerat av casca den 17 feb 2001]

[Redigerat av casca den 17 feb 2001]

Medlem sedan feb. 20005 891 inlägg
#6

eftersom jag aldrig gjort det, ty jag använder riktiga (;)) databaser och anrop, så vet jag heller inte hur man gör.

Riktiga databaser? ;)

------------------
...and you give me my phonecall?

Medlem sedan juni 200032 967 inlägg
#7

japp, hos mig heter dbms microsoft sql server, oracle eller ibm db2. :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan juni 200032 967 inlägg
#8

r då alltså.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan feb. 20005 891 inlägg
#9

Jahapp ;)

Själv lirar jag med mySQL, har skippat Access :p

------------------
...and you give me my phonecall?

Medlem sedan jan. 2001361 inlägg
#10

Lade till det i koden och fick detta felmeddelande i stället

Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'RecSet'

/cross/admin/save_image.asp, line 31

Någon som vet vad som är fel?

//m.v.h. Jimpa

Medlem sedan juni 200032 967 inlägg
#11

har du inkluderat adovbs.inc på din sida?

vilken är rad 31?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan feb. 20005 891 inlägg
#12

Men hörrö, skippa Recordseten.. ;)
Nåt sånt här ska funka lika bra..

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DSN=b1464-crossdata;Password=@01#$hefghhdgmlbfkjdhmpfbce"
Addera = "INSERT INTO image(imageID, image, imagetext) VALUES('" & Request.Form("imageID") & "','" & Request.Form("image") & "','" & Request.Form("imagetext") & "')"

Connect.Execute(Addera)
Connect.Close
Set Connect = Nothing
%>

------------------
...and you give me my phonecall?

Medlem sedan jan. 2001361 inlägg
#13

Tack för er hjälp fick det att funka nu!

//m.v.h. GLADE Jimpa

Medlem sedan feb. 200160 inlägg
#14

Jag ser att det löste sig för dig men tänkte bara berätta att om du ändå vill använda Recordset och öppna databasen så att det går att skriva i den. Skriv så här i själva öppningsfrasen.

RecSet.Open Addera, Connect, 1, 2

------------------
www.pcpriser.nu

252 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)