明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

數(shù)據(jù)連接出錯(cuò)信息

[摘要]數(shù)據(jù)連接錯(cuò)誤信息1.錯(cuò)誤信息(錯(cuò)誤信息我不用翻譯成中文了把,呵呵,大家諒解)Microsoft OLE DB Provider for ODBC Drivers error '8000400...

數(shù)據(jù)連接錯(cuò)誤信息1.錯(cuò)誤信息(錯(cuò)誤信息我不用翻譯成中文了把,呵呵,大家諒解)
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database
engine cannot open the file '(unknown)'. It is already opened exclusively
by another user, or you need permission to view its data.
原因:
這個(gè)錯(cuò)誤發(fā)生在當(dāng)IIS使用匿名帳號(hào)(通常是IUSR)時(shí),該帳號(hào)在NT中對(duì)數(shù)據(jù)庫所在的目錄
沒有正確的權(quán)限.(這就是為什么在Win95和PWS下沒問題,因?yàn)閣in95根本就沒有目錄權(quán)限這一說)
檢查文件和目錄的權(quán)限. 確定你能夠在該目錄中有能夠新建和刪除臨時(shí)文件的權(quán)限。
這些臨時(shí)文件其實(shí)是數(shù)據(jù)庫建立在同一個(gè)目錄下的文件, 但是要注意的是,有可能這些文件
也可能建立在別的目錄,例如 /Winnt.使用NT的文件監(jiān)視程序監(jiān)視文件失敗時(shí)到底是訪問了什么目錄。
這個(gè)NT的文件監(jiān)視程序可以在這個(gè)地方下載http://www.sysinternals.com. 如果你對(duì)數(shù)據(jù)庫使用了一個(gè)網(wǎng)絡(luò)地址,例如映射地址,就要檢查一下共享文件和目錄的權(quán)限,還要檢查一下數(shù)據(jù)源文件(DSN)是否被別的程序標(biāo)志成為正在使用中,
這些別的程序一般是Visual InterDev,關(guān)閉任何一個(gè)InterDev中的正打開和數(shù)據(jù)庫連接的項(xiàng)目。這個(gè)錯(cuò)誤還可能發(fā)生在這種情況:如果在DSN中使用了一個(gè)UNC路徑(就是通用命名協(xié)議),請(qǐng)改用
本地路徑進(jìn)行測試,因?yàn)槿绻麑?duì)本地?cái)?shù)據(jù)庫使用UNC也可能出錯(cuò)。
還可能發(fā)生在這種情況,如果服務(wù)器要訪問Access中的一個(gè)表,而這個(gè)表卻聯(lián)接在一個(gè)網(wǎng)絡(luò)服務(wù)器上。2.錯(cuò)誤信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] Couldn't use '(unknown)'; file
already in use.
原因:
多人使用時(shí)數(shù)據(jù)庫被鎖定。3.錯(cuò)誤信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not found and no default
driver specified.
原因:
最可能的原因是ConnectString是一個(gè)在global.asa中初始化的Session變量,但是global.asa
卻沒有正常工作。解決辦法是,檢查賦值時(shí)是否正確:(在你的asp中加入下面的代碼)
<%= "'auth_user' is " & request.servervariables("auth_user")%>
<P>
<%= "'auth_type' is " & request.servervariables("auth_type")%>
<P>
<%= "connection string is " & session("your_connectionstring")%>
<P>
還有一個(gè)原因就是你在你的ConnectString中加入了多余的空格,例如
DSN = MyDSN; Database = Pubs;
試試改成下面這個(gè)樣子:
DSN=MyDSN;Database=Pubs;如果是global.asa還沒有工作,檢查該文件是否在運(yùn)用程序的根目錄中,或者是虛擬目錄的根目錄中。還有可能錯(cuò)誤出現(xiàn)的原因是DSN名稱沒找著,這可以采用我提供的id=36767的辦法解決。
最后是檢查是否安裝了最新的驅(qū)動(dòng)程序,既是否是最新的MDAC版本。4.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not ??
原因:
這個(gè)錯(cuò)誤有可能是出現(xiàn)在你的計(jì)算機(jī)上軟件安裝(或則反安裝)的順序上。
如果ODBC的版本不一致的話,就會(huì)發(fā)生該錯(cuò)誤。
解決辦法是安裝最新版本的MDAC5.錯(cuò)誤信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Access 97 ODBC driver Driver]General error Unable to open
registry key 'DriverId'.
原因:
這個(gè)錯(cuò)誤發(fā)生在愛從注冊(cè)表中讀取數(shù)值的時(shí)候。 使用regedit32.exe檢查你的注冊(cè)表的權(quán)限。
你也可以使用NT中的注冊(cè)表監(jiān)視程序(NTRegMon)來看讀取失敗信息。該程序到這找:http://www.sysinternals.com6.錯(cuò)誤信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][dbnmpntw]ConnectionOpen (CreateFile()).
原因:
兩個(gè)原因:當(dāng)一個(gè)數(shù)據(jù)庫中包含有分別在不用機(jī)器上的許可關(guān)系時(shí),
這也可能發(fā)生在同一臺(tái)機(jī)器上,當(dāng)你給一個(gè)關(guān)系設(shè)置了UNC路徑,而另一個(gè)關(guān)系卻是本地路徑。
錯(cuò)誤原因是:
當(dāng)用戶使用IIS匿名帳號(hào)登錄后,對(duì)本地這臺(tái)機(jī)器而言他是有權(quán)的,但是對(duì)于一個(gè)UNC路徑的機(jī)器,
另外這臺(tái)機(jī)器是不會(huì)認(rèn)為你當(dāng)前匿名登錄的帳號(hào)在它那上面也是合法的。
這樣它就不允許你訪問它上面的資源,導(dǎo)致錯(cuò)誤。兩個(gè)解決辦法:
1。在IIS工具中,改變IIS匿名帳號(hào)成另外一個(gè)基于域的帳號(hào)。(也就是不使用匿名登錄)
2;騽t在那臺(tái)你要訪問資源的機(jī)器上也創(chuàng)建一個(gè)和當(dāng)前匿名帳號(hào)同樣的帳號(hào),使用同樣的密碼。7.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005' Microsoft][ODBC
Microsoft SQL Driver] Logon Failed()
原因:
該錯(cuò)誤是由SQL Server產(chǎn)生的,當(dāng)它不接受或則不能夠認(rèn)識(shí)這個(gè)登錄帳號(hào)的時(shí)候,或者沒有使用管理員身份登錄,
也可能是在NT中沒有SQL影射帳號(hào)造成的。使用系統(tǒng)管理員帳號(hào)(SA)登錄,一般密碼應(yīng)該為空.注意,這時(shí)必須使用CoonectString而不能夠使用DSN文件。
因?yàn)镈SN中沒有保存用戶名和密碼。
檢查NT是否給SQL映射了帳號(hào)。8.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server] Login failed- User: Reason:
Not defined as a valid user of a trusted SQL Server connection.
原因:
原因同上。
試試這個(gè)辦法:在SQL Server的Enterprise Manager中,選擇Server/SQL Server/Configure[ASCII
133]/Security Options/Standard.
如果是運(yùn)行在IIS4中,取消選擇該項(xiàng)目的Password Synchronization選項(xiàng)。9.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] Couldn't lock file.
原因:
也許是沒有正確的權(quán)限生成Access數(shù)據(jù)庫的鎖定文件(.ldb)
默認(rèn)時(shí),該文件和你的數(shù)據(jù)庫是同一個(gè)目錄的。
給匿名帳號(hào)全權(quán)訪問數(shù)據(jù)庫共享目錄的權(quán)限。有時(shí)是因?yàn)槲募且驗(yàn)楣蚕頃r(shí)有意使用了只讀的權(quán)限限制。試試使用下面的代碼。
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Mode = adModeShareDenyWrite '810.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] '(unknown)' isn't a valid
path. Make sure that the path name is spelled correctly and that you are
connected to the server on which the file resides.
原因:
路徑非法。最可能發(fā)生在當(dāng)Global.asa和CoonecntString被使用到另外一臺(tái)機(jī)器上的時(shí)候。11.錯(cuò)誤信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server] The query and the views in
it exceed the limit of 16 tables. 原因:
查詢太復(fù)雜了,對(duì)查詢有限制。12.錯(cuò)誤信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][DBMSSOCN] General network error. Check
your network document
原因:
當(dāng)裝有SQL Server的機(jī)器改名的時(shí)候。但是DSN還使用了原來的機(jī)器名。