在vs2005環境下應用aspx webform操作ACCESS資料庫調試正常,可是託管到Windows XP+IIS瀏覽時卻不能更新和添加資料。明顯是此資料庫是唯讀,原因在於Windows對檔案的安全的管理。
在網上找到這篇文章:http://blog.csdn.net/ywx41769/archive/2010/01/28/5263570.aspx
依次操作解決了問題。
在這裡首先感謝原作者~
運行iis錯誤資訊可能是下面的集中情況:
1、Microsoft JET Database Engine (0x80040E09) 不能更新。資料庫或對象為唯讀
2、Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft AccessDriver] 操作必須使用一個可更新的查詢。
3、Microsoft JET Database Engine (0x80004005) 操作必須使用一個可更新的查詢。解決辦法有以下幾種(針對不同的伺服器可能解決辦法不一樣,在這裡假設網站主目錄為wwwroot):
A、在wwwroot檔案夾上面點擊右鍵-“屬性”-取消“唯讀”此方法最簡單、偶爾有效
B、在您的資料庫檔案上檔案夾上面點擊右鍵-“屬性”-“安全”-添加使用者:“IUSR_電腦名稱” 並開放“IUSR_電腦名稱”的讀取、寫入許可權此方法是目前解決這個問題最好的辦法,一般都可以解決問題XP系統下可能點擊右鍵看不到“安全”選項,請先開啟“工具”-“檔案夾選項”-“查看”-取消“使用簡單檔案分享權限設定(推薦)” 然後即可在屬性中找到“安全”選項
C、在wwwroot檔案夾上面點擊右鍵-“屬性”-“web共用”-“共用資料夾”最後一點就是,如果想把自己的機器設定成調試ASP的伺服器,那麼最好不要使用win XP系統,選用WIN 2000為宜,實在不行...那麼就做好走很多彎路的準備吧!....當然了,在XP出現莫名其妙的問題的時候,請多考慮下XP的使用權限設定方面的問題。
4. 要是還沒解決 你看下你的根目錄檔案 是不是放在c盤的 一般C盤的許可權 不高
系統為了 保護系統檔案所以一般強製為直讀 ··所以最好轉到其他盤