Access 錯誤   Microsoft OLE DB Provider for ODBC Drivers (0x80004005)

今天調試了一個網站,這個網站用的是Access,但以前都用SQL,忽然感覺有點不習慣...
這個網站是別人開發的,我們老闆買了過來,讓我調試一下,本以爲很簡單,但在調試過程中發現,用戶可以正常登錄網站,但一涉及到數據庫的修改,如update這些操作時,就會提示:操作必須使用一個可更新的查詢 等類似的錯誤提示...
本以爲是代碼有問題,所以一直找調試代碼,但最後怎麼也找不出毛病,後來又懷疑是不是IIS配置有問題,但也後還沒找出來。
最後,無意間看見文件的屬性爲:只讀,會不會是這個問題呢?試試吧,最後把文件"只讀"的那勾去掉了,但調試的時候還是不行。最後一想,不對,是不是因爲權限的問題,一看分區,果然是NTFS的,然後我看看我我這個網站允許匿名訪問的用戶名,然後把它添加到了裏面,但結果還是不行,無論我把這個用戶的權限如何調,就是不行,由於我這是Win2003,爲了安全,以前我把evryone這個給刪掉了,我想把這個給加上看看,再給它一個“可寫”的權限,然後再運行網站。
OK,搞定!!
最後得出一結論:在用Access作爲數據庫的網站裏,如果磁盤分區是NTFS的,那麼這個Access文件必須讓evryone用戶具體可寫權限,否則,數據庫更新操作將會出錯。
而跟開發語言沒多大關係。
 
補充:如果還是不行的話可以,查看一下系統盤的windows\temp目錄,看一下evryone用戶是否且有寫權限,如果沒有,加上evryone的寫權限就可以了(只對NTFS格式的磁盤有效)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章