/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Skrive til database
Fra : Ryan


Dato : 11-04-03 11:41

Jeg ville gerne kunne opdatere en database, men jeg får følgende fejl:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable
query.
/test/admin/adminkoderwrite.asp, line 35

Koden er:

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("../admin/admin1.mdb")
Conn.Open DSN
strSQL = "Insert into admin (brugernavn, kode) values('" & brugernavn & "',
'" & kode & "')"
Set rs = Conn.Execute(strSQL) ' <--- linie 35
Conn.Close
Set Conn = Nothing


Når jeg udskriver min strSQL, får jeg følgende:
Insert into admin (brugernavn, kode) values('ryan', 'test')

Hvad gør jeg forkert?

--
Ryan



 
 
Chrisser (11-04-2003)
Kommentar
Fra : Chrisser


Dato : 11-04-03 11:58

Ryan wrote:

> Set rs = Conn.Execute(strSQL) ' <--- linie 35

Det skal være:
Conn.Execute(strSQL)
- når du foretager en insert/opdatering, rs er til udtagning af data og det
gør du ikke lige nu.

tsk, udtagning - jeg trænger til weekend når jeg ikke kan finde på bedre....


Chrisser


Chrisser (11-04-2003)
Kommentar
Fra : Chrisser


Dato : 11-04-03 12:09

Chrisser wrote:
> Ryan wrote:
>
>> Set rs = Conn.Execute(strSQL) ' <--- linie 35
>
> Det skal være:
> Conn.Execute(strSQL)
> - når du foretager en insert/opdatering, rs er til udtagning af data
> og det gør du ikke lige nu.
>
> tsk, udtagning - jeg trænger til weekend når jeg ikke kan finde på
> bedre....

Især da man ved nærmere eftertanke vist gerne må gøre ovenstående...jeg
bruger det bare ikke selv


Chrisser


Jens Gyldenkærne Cla~ (11-04-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 11-04-03 12:25

Chrisser skrev:

>>> Set rs = Conn.Execute(strSQL) ' <--- linie 35

>> Conn.Execute(strSQL)
>> - når du foretager en insert/opdatering, rs er til udtagning
>> af data og det gør du ikke lige nu.

> Især da man ved nærmere eftertanke vist gerne må gøre
> ovenstående...jeg bruger det bare ikke selv

Det er så vidt jeg husker ikke ulovligt, men det er spild af
resurser eftersom man ikke har noget at bruge et recordset til ved
en handlingsforespørgsel.

Så for at gøre det kort: det var et godt forslag (jeg havde slet
ikke set at Ryan brugte Set rs = ...), men næppe et forslag der
løser Ryans problem.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (11-04-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 11-04-03 12:04

Ryan skrev:

> [Microsoft][ODBC Microsoft Access Driver] Operation must use
> an updateable query.

Du mangler skriverettigheder til databasen. Prøv at se
<http://asp-faq.dk/article/?id=4> eller tråden "Fejl efter
opgradering af Windows" der handler om samme problem.


> Når jeg udskriver min strSQL, får jeg følgende:
> Insert into admin (brugernavn, kode) values('ryan', 'test')

Det er generelt en rigtig god ide at udskrive din sqlsætning (tak
for det), men det har desværre ikke noget med dit aktuelle problem
at gøre. Det kan selvfølgelig være svært at vide.

NB: Du bør indsætte et mellemrum mellem "values" og "(". Det virker
måske uden, men det virker med garanti med.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Ryan (11-04-2003)
Kommentar
Fra : Ryan


Dato : 11-04-03 12:56

> Du mangler skriverettigheder til databasen. Prøv at se
> <http://asp-faq.dk/article/?id=4> eller tråden "Fejl efter
> opgradering af Windows" der handler om samme problem.

- Det ser ud til det virker nu, efter jeg har fulgt jeres råd (et mellemrum
og fjerne "set rs").
Min hjemmeside er placeret hos webhoteludbyder, og jeg har ikke bedt dem
ændre noget. Da det virkede efter jeg tjekkede deres hjemmeside, hvor de
skriver: "Alle brugere vil havde de fornødne skrive/læse rettigheder i hele
deres dir".
Så jeg burde have haft skriverettigheder hele tiden....?

Tak for hjælpen.

--
Ryan



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste