Avatar billede mihl Nybegynder
15. november 2004 - 11:21 Der er 11 kommentarer og
1 løsning

Indsætte data i Access DB

DataPath = "..\Projekt\"
    Dim Conn As New adodb.Connection
    Conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & DataPath & "V97.mdb"
    Set rs = Conn.Execute("SELECT * From Lånere")
    rs.AddNew
        rs("Fornavn") = Form4.Text1.Text
        rs("Efternavn") = Form4.Text2.Text
        rs("Telefonnummer") = Form4.Text3.Text
        rs("Adresse") = Form4.Text4.Text
        rs("Postnr") = Form4.Text5.Text
        rs("CPR-Nr") = Form4.Text6.Text
    rs.Update

^^ Jeg får at vide at: "Det aktuelle postsæt understøtter ikke opdatering. Dette skyldes en begrænsning af provideren eller den markerede låsetype"

Hvad gør jeg galt ??
Avatar billede michael_stim Ekspert
15. november 2004 - 11:23 #1
Du skal give rettigheder til IUSR_computernavn på den mappe der du har databasen.
Avatar billede michael_stim Ekspert
15. november 2004 - 11:30 #2
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
Database Error: [Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query.

Dette er en meget almindelig fejlmeddelelse, der som regel opstår i forbindelse med at tilføje, eller opdatere poster i en Access database på en NT Server.

Da Access er fil baseret, vil ethvert forsøg på at opdatere databasen med et ASP script, kræve at dine rettigheder på serveren er korrekt konfigureret.

For at løse problemet skal du højre klikke på den mappe hvor databasen er gemt. Klik på fanebladet Security, og tildel brugeren IUSER_xxxxx (xxxxx er serverens navn) "Write" rettigheder, du skal også sørge for database filen får "Write" rettigheder.

Fandt denne på: http://activedeveloper.dk/artikler/default.asp?articleid=58
Avatar billede tubber Juniormester
15. november 2004 - 11:38 #3
Øhm nu er det vb det her så IUSER har ikke så meget med det at gøre......

Først vil jeg ændre Lånere til Laanere da Å kan give problemer.....
Næst skal du chekke referencerne.....
Når du prøver at indsætte data med SQL skal du har referencen:
Microsoft DAO 3.51 Object Library

Umiddelbart ser det rigtigt ud det du har lavet :)
Avatar billede michael_stim Ekspert
15. november 2004 - 11:50 #4
Min fejl, sorry. Läste ikke ordentligt ;o)
Avatar billede skwat Praktikant
15. november 2004 - 14:02 #5
rs.locktype = adLockBatchOptimistic
Avatar billede kabbak Professor
15. november 2004 - 14:48 #6
Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("Tidsreg")

DataPath = "..\Projekt\"
    Dim Conn As New adodb.Connection
    Conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & DataPath & "V97.mdb"
  Set rs = Conn.OpenRecordset("Lånere")
      rs.AddNew
        rs("Fornavn") = Form4.Text1.Text
        rs("Efternavn") = Form4.Text2.Text
        rs("Telefonnummer") = Form4.Text3.Text
        rs("Adresse") = Form4.Text4.Text
        rs("Postnr") = Form4.Text5.Text
        rs("CPR-Nr") = Form4.Text6.Text
    rs.Update



ikke testet
Avatar billede kabbak Professor
15. november 2004 - 14:48 #7
DataPath = "..\Projekt\"
    Dim Conn As New adodb.Connection
    Conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & DataPath & "V97.mdb"
  Set rs = Conn.OpenRecordset("Lånere")
      rs.AddNew
        rs("Fornavn") = Form4.Text1.Text
        rs("Efternavn") = Form4.Text2.Text
        rs("Telefonnummer") = Form4.Text3.Text
        rs("Adresse") = Form4.Text4.Text
        rs("Postnr") = Form4.Text5.Text
        rs("CPR-Nr") = Form4.Text6.Text
    rs.Update



ikke testet

der var kommet for meget med
Avatar billede mihl Nybegynder
15. november 2004 - 19:08 #8
Problemet blev løst sådan:
    Dim Conn As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & App.Path & "\V97.mdb"
    SQLstmt = "SELECT * FROM Lånere"
    rs.Open SQLstmt, Conn, 1, 3
    rs.AddNew
        rs("Fornavn") = Form4.Text1.Text
        rs("Efternavn") = Form4.Text2.Text
        rs("Telefonnummer") = Form4.Text3.Text
        rs("Adresse") = Form4.Text4.Text
        rs("Postnr") = Form4.Text5.Text
        rs("CPR-Nr") = Form4.Text6.Text
    rs.Update

Points til Kabbak
Avatar billede kabbak Professor
15. november 2004 - 20:03 #9
jeg kan ikke se at min løsning blev brugt, så tag point selv.
Avatar billede mihl Nybegynder
16. november 2004 - 08:18 #10
Jeg løste det via din metode.... Så points til dig !
Avatar billede kabbak Professor
16. november 2004 - 09:26 #11
ok, så da et svar . ;-))
Avatar billede skwat Praktikant
16. november 2004 - 09:28 #12
det der har løst det er at du bruger open på recordsettet, og der sætter du curser parameter, men det ville være mere pænt hvis du skrev

rc.Open "select * from lånere", Conn, adOpenKeyset, adLockOptimistic

Der er ikke mange mennesker der kender alle enums uden ad.
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
Kurser inden for grundlæggende programmering

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