|
Microsoft Office Access是由微軟發(fā)布的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。它結(jié)合了 MicrosoftJet Database Engine 和 圖形用戶(hù)界面兩項(xiàng)特點(diǎn),是 Microsoft Office 的系統(tǒng)程序之一。Microsoft Office Access是微軟把數(shù)據(jù)庫(kù)引擎的圖形用戶(hù)界面和軟件開(kāi)發(fā)工具結(jié)合在一起的一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)。它是微軟OFFICE的一個(gè)成員, 在包括專(zhuān)業(yè)版和更高版本的office版本里面被單獨(dú)出售。2018年9月25日,最新的微軟Office Access 2019在微軟Office 2019里發(fā)布。 access 不能打開(kāi)注冊(cè)表關(guān)鍵字 80004005 錯(cuò)誤信息如下: ---------------------------------- Microsoft OLE DB Provider for ODBC Drivers 錯(cuò)誤 ''''80004005'''' [Microsoft][ODBC Microsoft Access Driver]常見(jiàn)錯(cuò)誤 不能打開(kāi)注冊(cè)表關(guān)鍵字 ''''Temporary (volatile) Jet DSN for process 0x728 Thread 0x854 DBC 0x276fb44 Jet''''。 ---------------------------------- 下面幾個(gè)可能原因: 1。微軟已經(jīng)不更新ODBC,需要改用JET的方式連接ACCESS數(shù)據(jù)庫(kù)文件; 2。系統(tǒng)目錄的權(quán)限發(fā)生的變更。 也有老帖子說(shuō)什么原因是:“ACCESS數(shù)據(jù)庫(kù)文件是ACCESS97版本的”,這個(gè)無(wú)須考慮,我用的是ACCESS2000數(shù)據(jù)庫(kù)。 對(duì)于第一個(gè)原因,原來(lái)的連接字串如下: --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" ------------------------------------- 測(cè)試過(guò)后無(wú)效,雖然提示的錯(cuò)誤信息有點(diǎn)不同: ---------------------------------- Microsoft JET Database Engine 錯(cuò)誤 ''''80004005'''' 未指定的錯(cuò)誤 ---------------------------------- 最后檢查第二個(gè)原因:系統(tǒng)目錄權(quán)限不足。經(jīng)詢(xún)問(wèn),原來(lái)由于出于安全的考慮一同事把該服務(wù)器的WINNT目錄設(shè)置為 Administrators、system “完全控制”,users 只讀。 但是,按道理,這樣的權(quán)限設(shè)置,ODBC的驅(qū)動(dòng)程序處于 winntsystem32odbcjt32.dll 這個(gè)也是可讀的,難道是因?yàn)槿鄙?ldquo;執(zhí)行”權(quán)限? 我把 winntsystem32目錄下所有以odbc開(kāi)頭的DLL文件全部授予“執(zhí)行”權(quán)限,發(fā)現(xiàn)還是一樣的錯(cuò)誤信息。跟著我索性把整個(gè) system32 目錄設(shè)成 everyone 可執(zhí)行,可是一測(cè)試依然不行。 難道是還有其他文件被ODBC或JET調(diào)用但又不在這個(gè)system32目錄下且又沒(méi)有得到充分授權(quán)而導(dǎo)致失敗? 正在想的時(shí)候,驀然瞥見(jiàn) winnttemp 目錄。嘿,我把 temp 目錄設(shè)置成 everyone 可“寫(xiě)入”看看。 一測(cè)試,嘿,成了。使用ODBC連接方式的程序,成功的讀取更新ACCESS數(shù)據(jù)庫(kù)中的記錄。 Microsoft Access在很多地方得到廣泛使用,例如小型企業(yè),大公司的部門(mén)。 |
溫馨提示:喜歡本站的話(huà),請(qǐng)收藏一下本站!