webForumDet fria alternativet

hjälp önskas!

ASP

6 svar · 506 visningar · startad av supercajo

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

Hjälp mig lösa mitt lilla problem...

VAd är felet i följande kod?Kod:

<%
Set oDB = Server.CreateObject("ADODB.Connection")

oDB.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\home\kunder\8951\databases\srb.mdb"

Set RecSet = Server.CreateObject("ADODB.Recordset")
  Addera = "SELECT * FROM medarbetare"
  RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
    RecSet.AddNew

    RecSet("Fornamn") = Request.Form("fornamn")
    RecSet("Efternamn") = Request.Form("efternamn")
    RecSet("Adress") = Request.Form("adress")

    RecSet.Update
    RecSet.Close
    Connect.Close %>

Då jag får upp följande problem:

ADODB.Recordset error '800a0bb9'

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

/beta/add.asp, line 17

Fatter ej var felet ligger...:S eller a, förstår att det är något med Kod:

RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

snälla, jag behöver hjälp!

Medlem sedan okt. 2004159 inlägg
#2

Eftersom du på första raden skapar en connection som du namnger till oDB så skall raden vara:
RecSet.Open Addera, oDB, adOpenStatic, adLockOptimistic

Detta förutsätter också att variablerna adOpenStatic och adLockOptimistic fått sina värden via ex. att ladda filen adovbs.inc.
Alternativt att ersätta med siffervärden:
RecSet.Open Addera, oDB, 3, 3

Sedan tror jag att jag skulle skriva:

Addera = "INSERT INTO medarbetare (Fornamn, Efternamn, Adress) VALUES ('"
Addera = Addera & Request.Form("fornamn") & "', '"
Addera = Addera & Request.Form("efternamn") & "', '"
Addera = Addera & Request.Form("adress") & "')"
oDB.Execute(Addera)
Medlem sedan jan. 2005114 inlägg
#3

Får fortfarande samma problem....:S

Medlem sedan okt. 2004159 inlägg
#4

Jag knappade in detta in min dator och fick det att fungera:

Set oDB = Server.CreateObject("ADODB.Connection")

oDB.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\documents and settings\admin\mina dokument\wwwroot\testapp\db\dbTest.mdb"

Set RecSet = Server.CreateObject("ADODB.Recordset")
  Addera = "SELECT * FROM medarbetare"
  RecSet.Open Addera,oDB,3,3
    RecSet.AddNew

    RecSet("Fornamn") = "Kalle"
    RecSet("Efternamn") = "Karlsson"
    RecSet("Adress") = "A-stad"
  
    RecSet.Update
    RecSet.Close
    oDB.Close %>

Funkar det inte hos dig så funderar jag om det är något med databasen, formuläret eller så. Kika igenom koden ytterligare en gång.

Medlem sedan jan. 2005114 inlägg
#5

Tack för hjälpen har lyckats lösa problemet!
:D

Medlem sedan okt. 2004159 inlägg
#6

Du får gärna tala om vad som var fel. Det kan ju hjälpa andra som läser tråden.

Medlem sedan jan. 2005114 inlägg
#7

Jag hade skapat en connect på samma sätt som jag skapade oDB'n. Och sedan anropat connect som i själva verket inte på något sätt hade definerats. Varav felet då. Lite pinsamt men sånt som händer....antar jag...Har bara mig själv att skylla...:)

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)