Avatar billede tblaster Nybegynder
15. august 2003 - 12:01 Der er 12 kommentarer og
2 løsninger

Tilføje information til tabel i databse

Hvordan kan tilføje informationer til en tabel i min ms database? Jeg har før benyttet følgende til min access db:

    rs.AddNew
    rs("FagseminarID") = Session("FagseminarID")
    rs("KundeID") = Session("KundeID")
    rs("Navn") = Session("fornavn1") & " " & Session("efternavn1")
    rs("Firma") = Session("Firma")
    rs("Betalingsmåde") = Session("betaling")
    rs.update

Men benytter jeg det får jeg denne fejl:
Current Recordset does not support updating. This may be a limitation of the provider, or of the selected locktype.

Hvis jeg kan ændre i min ms database indstillinger så jeg kan benytte overstående så vil det være fint. Det gør heller ikke noget hvis jeg skal bruge en anden måde at tilføje informationerne. Det skal naturligvis være i asp!

Jeg ved at følgende måde kan benyttes:
Conn.execute("UPDATE ...

Men jeg kan ikke se hvordan jeg vha. overstående kan opdater alle felterne på en gang.

Må men lad mig høre hvad der er af muligheder og hvad I anbefaler!
Avatar billede kustoden Nybegynder
15. august 2003 - 12:14 #1
Prøv med Conn.Execute("UPDATE MinTabel SET " &_
                      KundeID = " &Session("KundeID" ) ", " &_
                      "Navn = '" & Session("fornavn1") & " " &_
                      Session("efternavn1") & "', " &_
                      "Firma = " & Session("Firma") &_
                      "BetalingsMaade = " & Session("Betaling") & " " &_
                      "WHERE FagseminarID = " & Session("FagseminarID"))
Avatar billede tblaster Nybegynder
15. august 2003 - 12:23 #2
Det giver:

Expected ')'
KundeID = " &Session("KundeID" ) ", " &_
Avatar billede kustoden Nybegynder
15. august 2003 - 12:30 #3
OK

KundeID = " & Session("KundeID") & ", " &_
Avatar billede tblaster Nybegynder
15. august 2003 - 12:31 #4
Det giver samme fejl
Avatar billede kustoden Nybegynder
15. august 2003 - 12:37 #5
Prøv at lave en streng med teksten, altså

strSQL = "UPDATE MinTabel SET " &_
                      KundeID = " &Session("KundeID" ) ", " &_
                      "Navn = '" & Session("fornavn1") & " " &_
                      Session("efternavn1") & "', " &_
                      "Firma = " & Session("Firma") &_
                      "BetalingsMaade = " & Session("Betaling") & " " &_
                      "WHERE FagseminarID = " & Session("FagseminarID")

Conn.Execute(strSQL)

I stedet for at smide den afsted til serveren så lav en

Response.Write(strSQL)
Response.End

Så smider du lige teksten herud, og så kigger jeg på den.

Skriv den ud i stedet for at
Avatar billede tblaster Nybegynder
15. august 2003 - 12:47 #6
Jeg får denne fejl:

Expected end of statement
KundeID = " & Session("KundeID" ) ", " &_

Den når ikke så langt at den kan udskrive stengen
Avatar billede kustoden Nybegynder
15. august 2003 - 12:52 #7
prøv lige at sætte hele den linie ind, jeg sendte anden gang.

Der skal være & mellem ) og ", "
Avatar billede tblaster Nybegynder
15. august 2003 - 12:54 #8
Det giver det samme:

Expected end of statement
KundeID = " & Session("KundeID" ) & ", " &_
Avatar billede kustoden Nybegynder
15. august 2003 - 12:58 #9
Jeg beklager : Der skal selvfølgelig være " foran KundeID.

strSQL = "UPDATE MinTabel SET " &_
                      "KundeID = " & Session("KundeID") & ", " &_
                      "Navn = '" & Session("fornavn1") & " " &_
                      Session("efternavn1") & "', " &_
                      "Firma = " & Session("Firma") &_
                      "BetalingsMaade = " & Session("Betaling") & " " &_
                      "WHERE FagseminarID = " & Session("FagseminarID")
Avatar billede mm12010 Nybegynder
15. august 2003 - 13:00 #10
hvis du åbner dit RecordSet sådan:
    rs.Open(strSQL, conn, 3, 3)
kan du sagtens bruge:
    rs.AddNew
    rs("FagseminarID") = Session("FagseminarID")
    rs("KundeID") = Session("KundeID")
    rs("Navn") = Session("fornavn1") & " " & Session("efternavn1")
    rs("Firma") = Session("Firma")
    rs("Betalingsmåde") = Session("betaling")
    rs.update
Avatar billede tblaster Nybegynder
15. august 2003 - 13:04 #11
mm12010 ... hvis jeg benytter følgende:

  rs.Open(Sql, conn, 3, 3)

Får jeg:
Cannot use parentheses when calling a Sub
Avatar billede mm12010 Nybegynder
15. august 2003 - 13:07 #12
sorry:
  rs.Open Sql, conn, 3, 3
ellers skal din sql være:
  strSQL = "UPDATE MinTabel SET _KundeID = "&Session("KundeID")&", Navn = '"&Session("fornavn1")&" "+Session("efternavn1")&"', Firma = '"&Session("Firma")&"', BetalingsMaade = '"&Session("Betaling")&"' WHERE FagseminarID = "&Session("FagseminarID")
Avatar billede tblaster Nybegynder
15. august 2003 - 13:14 #13
Det virker nu ... tak for hjælpen!
Avatar billede mm12010 Nybegynder
15. august 2003 - 13:24 #14
så lidt - takker for point :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester