Database or object is read-only

Discussion in 'C#' started by tommyasp, May 16, 2008.

  1. #1
    Hi

    I have reinstalled my computer and installed iis. When i try and update an access database with asp i get this message "Microsoft JET Database Engine (0x80040E09) Cannot update. Database or object is read-only."

    I've checked IUSR and checked that i have write permission in iis control panel. I have checked the file and folder in xp, that they are not read only, and i've red lots of forum treads sayin to check the read/write pemision, but nothing helps.

    my code:
    <%
    'on error resume next
    dim meny, conn, Qdata, Query, db_sti
    meny=request.Form("meny")
    db_sti = ("D:\Lager\devprojects\publish\db\database1.mdb")
    Query = "SELECT * FROM tabell1"
    set conn = server.createObject("ADODB.connection")
    conn.ConnectionString = "provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & db_sti
    conn.open
    set Qdata = server.CreateObject("ADODB.Recordset")
    Qdata.Open Query, conn, 3,3

    Qdata.moveFirst
    'response.Write(Qdata("felt1")) ' just to check if it reads the database
    Qdata("felt1")=meny
    Qdata.update
    Qdata.close
    conn.close
    %>

    I've copied the code from a project I did several years ago, and is working.

    Would really apreaciate some ideas about this.
     
    tommyasp, May 16, 2008 IP
  2. vpguy

    vpguy Guest

    Messages:
    275
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #2
    The only thing I can think of is that maybe you should check the database file itself (it sounds like you have already granted permission to the folder it is in):
    - Using regular Explorer, right-click the file to make sure it's not Read Only
    - Using IIS, right-click it and make sure it has Write permissions

    Probably won't help, but I don't think your code has anything to do with it.
     
    vpguy, May 20, 2008 IP
  3. dylanj

    dylanj Peon

    Messages:
    173
    Likes Received:
    3
    Best Answers:
    1
    Trophy Points:
    0
    #3
    From personal experience, I would say that you're getting that error because IUSR doesn't have write access to your database. Edit the file permissions in Explorer so that the IUSR account has read/write access to your database. If it's not that, then you could try http://tutorials.aspfaq.com/8000xxxxx-errors/why-do-i-get-80040e09-errors.html

    Just so you know: aspfaq.com has descriptions for pretty much all the database errors you can possibly imagine :)
     
    dylanj, May 23, 2008 IP