日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

關(guān)于ASP訪問ACCESS“不能打開注冊表”_Access數(shù)據(jù)庫教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:在窗體間傳遞參數(shù)的幾種常用辦法
在實(shí)際開發(fā)應(yīng)用中,常常需要在窗體間傳遞參數(shù)。常用的幾種參數(shù)傳遞方法有如下幾種: 1、使用openargs 在調(diào)用的窗體使用如下語句: docmd.openform "被調(diào)用的窗體", , , , ,

前天,N久以前做的一個(gè)ACCESS數(shù)據(jù)庫的程序出錯(cuò)了,程序都沒有改動(dòng)過,之前好好的,突然就不行了。
錯(cuò)誤信息如下:
----------------------------------
Microsoft OLE DB Provider for ODBC Drivers 錯(cuò)誤 '80004005'
[Microsoft][ODBC Microsoft Access Driver]常見錯(cuò)誤 不能打開注冊表關(guān)鍵字 'Temporary (volatile) Jet DSN for process 0x728 Thread 0x854 DBC 0x276fb44 Jet'。
----------------------------------

由于最近一臺(tái)服務(wù)器被人攻擊垮掉了正在重裝,沒時(shí)間理這個(gè)問題。后來在朋友(是該程序的用戶哦)的多翻催促下,決定搞定它。
一開始,還真不摸不清是怎么回事。在GOOGLE上搜了很多,眾說紛紜,過濾去一堆沒有結(jié)果的垃圾信息,得到下面幾個(gè)可能原因:
1。微軟已經(jīng)不更新ODBC,需要改用JET的方式連接ACCESS數(shù)據(jù)庫文件;
2。系統(tǒng)目錄的權(quán)限發(fā)生的變更。
也有老帖子說什么原因是:“ACCESS數(shù)據(jù)庫文件是ACCESS97版本的”,這個(gè)無須考慮,我用的是ACCESS2000數(shù)據(jù)庫。

對于第一個(gè)原因,原來的連接字串如下:
--ODBC連接方式------------------------
mdbpath=server.MapPath("my.mdb.asp")
CnnStr = "DBQ=" & mdbpath & ";DRIVER={Microsoft Access Driver (*.mdb)};uid=admin;pwd="
-------------------------------------

改用JET連接后連接字串為:
---JET連接方式---------------------
CnnStr = "Provider=Microsoft.Jet.OLEDB.4.0;User Id=admin;Data Source="& mdbpath &" ';Password=luntanbbs"
-------------------------------------

測試過后無效,雖然提示的錯(cuò)誤信息有點(diǎn)不同:
----------------------------------
Microsoft JET Database Engine 錯(cuò)誤 '80004005' 未指定的錯(cuò)誤
----------------------------------

最后檢查第二個(gè)原因:系統(tǒng)目錄權(quán)限不足。經(jīng)詢問,原來由于出于安全的考慮一同事把該服務(wù)器的WINNT目錄設(shè)置為 Administrators、system “完全控制”,users 只讀。
但是,按道理,這樣的權(quán)限設(shè)置,ODBC的驅(qū)動(dòng)程序處于 winnt\system32\odbcjt32.dll 這個(gè)也是可讀的,難道是因?yàn)槿鄙?ldquo;執(zhí)行”權(quán)限?
我把 winnt\system32\目錄下所有以odbc開頭的DLL文件全部授予“執(zhí)行”權(quán)限,發(fā)現(xiàn)還是一樣的錯(cuò)誤信息。跟著我索性把整個(gè) system32 目錄設(shè)成 everyone 可執(zhí)行,可是一測試依然不行。
難道是還有其他文件被ODBC或JET調(diào)用但又不在這個(gè)system32目錄下且又沒有得到充分授權(quán)而導(dǎo)致失敗?
正在想的時(shí)候,驀然瞥見 winnt\temp 目錄。嘿,我把 temp 目錄設(shè)置成 everyone 可“寫入”看看。

一測試,嘿,成了。使用ODBC連接方式的程序,成功的讀取更新ACCESS數(shù)據(jù)庫中的記錄。

有意思的是,使用JET連接方式的程序,卻報(bào)另一個(gè)錯(cuò)誤:
-------------------------------------------
Microsoft JET Database Engine 錯(cuò)誤 '80040e4d' 無法啟動(dòng)應(yīng)用程序。
工作組信息文件丟失,或是已被其它用戶以獨(dú)占方式打開。
-------------------------------------------

嘿嘿,不知道這個(gè)JET的錯(cuò)誤又怎么回事呢?
有時(shí)間再搞搞它吧。如果你知道,請給我發(fā)個(gè)回復(fù)哦。 :-D

分享:啟動(dòng)命令行選項(xiàng)
下表列出了 Microsoft ACCESS 的命令行選項(xiàng): 選項(xiàng) 效果 database 打開指定的 Microsoft Access 數(shù)據(jù)庫或 Microsoft ACCESS 項(xiàng)目。如果需要,可以包括路徑。如果運(yùn)行的是 Microsoft Windows

來源:模板無憂//所屬分類:Access數(shù)據(jù)庫教程/更新時(shí)間:2008-08-22
相關(guān)Access數(shù)據(jù)庫教程