不能使用'';文件已在使用中。說明: 執行目前Web 請求期間,出現未處理的例外狀況。請檢查堆疊追蹤信息,以了解有關該錯誤以及程式碼中導致錯誤的出處的詳細資訊錯誤類型:
Microsoft JET Database Engine (0x80004005)
不能使用'';文件已在使用中。
錯誤原因:解決:iis使用者對資料目錄的權限不夠,ldb檔案無法自動生成
解決方法:新增internet匿名使用者對資料目錄的寫入權限
異常詳細資訊: System.Data.OleDb.OleDbException: 不能使用'';檔案已在使用中。
這一般是出現在網站程式存取資料庫的時候。
出現該錯誤,有三種可能的原因:
1.iis使用者對資料目錄的權限不夠,ldb檔案無法自動產生。
2.要連線的資料庫已經被開啟,佔用!關閉資料庫可解決問題!(可能別人正在下載你的資料庫呢!)
3.虛擬主機用戶,空間已滿,購買的空間大小已用完。
解決辦法:
1.出現第一種情況,如果是購買的空間,請聯絡空間商處理;如果你就是空間商或伺服器管理員,因為IIS使用者對資料庫目錄沒有讀寫權限,具體處理辦法是:開啟我的電腦,找到程式所在的目錄(例如:D:/wwwroot/),右鍵點選目錄,選擇安全選單項,選擇用戶,把everyone用戶的讀寫權限都加上,確定以後,刷新瀏覽器頁面,就可以正確使用系統了。
2.如果還是有問題,空間商或伺服器管理員可以重新啟動伺服器。這樣資料庫的佔用就可以釋放。如果是虛擬主機空間,聯絡空間商處理。請確認你是不是自己在上傳或下載資料庫導致資料庫檔案被佔用。
3.空間不足的情況,聯絡空間商花錢增加網站空間或升級配置。
其它相關參考內容:
------------------------」
[分析]
1.解決:IIs使用者對資料目錄的權限不夠,ldb檔案無法自動生成,請新增internet匿名使用者對資料目錄的寫入權限。
結果:還是不行
2.註銷windows帳戶,重新登陸。
結果:好用了,看來確實是某個進程在佔用這個mdb檔。
備註:判斷一個mdb檔案是否被進程佔用,就看同目錄下是否有同名的ldb文件,若有,就是被佔用。當被釋放時,ldb檔案會消失。
------------------------」
問題:不能使用;文件已在使用中,Microsoft JET Database Engine
解決:IIs使用者對資料目錄的權限不夠,ldb檔案無法自動生成,請新增internet匿名使用者對資料目錄的寫入權限。
參見:Microsoft Support ---Microsoft Knowledge Base Article - 289681