錯誤類型:
Microsoft JET Database Engine (0x80004005)
不能使用 '';文件已在使用中。
錯誤原因:解決:iis用戶對數(shù)據(jù)目錄的權(quán)限不夠,ldb文件無法自動生成
解決辦法:添加internet匿名用戶對數(shù)據(jù)目錄的寫入權(quán)限
異常詳細信息: System.Data.OleDb.OleDbException: 不能使用 '';文件已在使用中。
這一般是出現(xiàn)在網(wǎng)站程序訪問數(shù)據(jù)庫的時候。
出現(xiàn)該錯誤,有三種可能的原因:
1.iis用戶對數(shù)據(jù)目錄的權(quán)限不夠,ldb文件無法自動生成。
2.要連接的數(shù)據(jù)庫已經(jīng)被打開,占用!關(guān)閉數(shù)據(jù)庫可解決問題!(可能別人正在下載你的數(shù)據(jù)庫呢!)
3.虛擬主機用戶,空間已滿,購買的空間大小已經(jīng)用完。
解決辦法:
1.出現(xiàn)第一種情況,如果是購買的空間,請聯(lián)系空間商處理;如果你就是空間商或服務(wù)器管理員,因為IIS用戶對數(shù)據(jù)庫目錄沒有讀寫權(quán)限,具體處理辦法是:打開“我的電腦”,找到程序所在的目錄(例如:D:\wwwroot\),右鍵點擊目錄,選擇“安全”菜單項,選擇“用戶”,把everyone用戶的讀寫權(quán)限都加上,確定以后,刷新瀏覽器頁面,就可以正確使用系統(tǒng)了。
2.如果還是有問題,空間商或服務(wù)器管理員可以重新啟動服務(wù)器。這樣數(shù)據(jù)庫的占用就可以釋放。如果是虛擬主機空間,聯(lián)系空間商處理。請確認你是不是自己在上傳或下載數(shù)據(jù)庫導(dǎo)致數(shù)據(jù)庫文件被占用。
3.空間不足的情況,聯(lián)系空間商花錢增加網(wǎng)站空間或升級配置。
其它相關(guān)參考內(nèi)容:
----------------------
[分析]
1.解決:IIs用戶對數(shù)據(jù)目錄的權(quán)限不夠,ldb文件無法自動生成,請?zhí)砑觟nternet匿名用戶對數(shù)據(jù)目錄的寫入權(quán)限。
結(jié)果:還是不行
2.注銷windows賬戶,重新登陸。
結(jié)果:好用了,看來確實是某個進程在占用這個mdb文件。
備注:判斷一個mdb文件是否被進程占用,就看同目錄下是否有同名的ldb文件,若有,就是被占用。當被釋放時,ldb文件會消失。
----------------------
問題:不能使用";文件已在使用中,Microsoft JET Database Engine
解決:IIs用戶對數(shù)據(jù)目錄的權(quán)限不夠,ldb文件無法自動生成,請?zhí)砑觟nternet匿名用戶對數(shù)據(jù)目錄的寫入權(quán)限。
參見:Microsoft Support ---Microsoft Knowledge Base Article - 289681