最近幫別人處理下資料,發現添加資料時,就提示"ASP 不能更新。資料庫或對象為唯讀。",從網上找了,也沒有解決我的問題.
1、伺服器的資料目錄mdb檔案所在的目錄,是唯讀
2、資料庫在本地的許可權,去唯讀許可權,再上傳
3、有可能你是從唯讀目錄移動到可讀目錄的,所以一定不能這麼用,先下到本地,再上傳,可解決此類問題。www.jb51.net
"不能更新,資料庫或對象為唯讀"的解決方案
初接觸dreamweaver,在做一簡單頁面實現向access資料庫寫資料時,總是遇到這樣一錯誤:
Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80004005',[Microsoft][ODBC Microsoft Access Driver] 不能更新。
資料庫或對象為唯讀。調試了多次都不起作用。
沒辦法,只有百度一下了,呵呵。看來遇到我這種情況的還不少,一查就有很多相關資訊,資源共用的好處啊,^_^
解決的方法:
造成這個原因的問題就是網站目錄的存取權限問題,因為在使用Access資料庫的時候,要在同目錄產生一個.ldb檔案,如果此目錄
沒有寫入權限或者Access資料庫本身沒有寫的許可權,那麼就會***這個錯誤。由於通過瀏覽器訪問網站大都使用Internet匿名訪問,
我們只需要在資料庫的目錄許可權裡添加上“IUSR_電腦名稱”使用者就可以了,分給它“寫入”許可權。我發現一些文章說
讓加入EveryOne使用者,並給“寫入”許可權,這個太危險了。原則上是此目錄加的可以寫入使用者就是在IIS中配置的時候加的
Internet匿名訪問使用者,一般預設為“IUSR_電腦名稱”,不過如果是虛擬機器主機就要自己看看了。
具體的操作方式就是:
滑鼠右鍵點擊資料庫所在目錄(或者它上級目錄,但是注意要能夠繼承許可權)-〉選擇“共用和安全”-〉選擇“安全”選項卡-〉
點擊“添加”按鈕-〉點擊“進階...”按鈕-〉點擊“立即尋找(N)”按鈕-〉找到首碼為“IUSR_”的使用者名稱
(格式為IUSR_電腦名稱)-〉選中此使用者,點擊確定-〉這樣這個使用者就被加進來了-〉在“Internet來賓帳戶”的許可權框中,
除了預設的還要選中“寫入許可權”-〉“應用”或者“確定”即可。