dim sql as string
Dim rst As New ADODB.Recordset
rst.CursorLocation = adUseClient
rst.LockType = adLockOptimistic
Debug.Print sql
Debug.Print pAdoCN
rst.Open sql, pAdoCN, adOpenKeyset
Set OpenRecordset = rst
do while rst.eof ...
loop
'''程式執行到這里
rst.Open sql, pAdoCN, adOpenKeyset
就報如下錯誤:
'''實時錯誤'-2147467259(80004005)'
‘’‘[Microsoft][ODBC SQL Server Driver]通訊鏈接失敗
經測驗 如果不設定ado的CursorLocation和LockType屬性的話,可以正常訪問資料,但無法更新
另外在查詢分析器里面剛連接到資料庫,就出現下列錯誤:
服務器: 訊息 11,級別 16,狀態 1,行 0
[Microsoft][ODBC SQL Server Driver][DBNETLIB]一般性網路錯誤。請檢查網路檔案。
ODBC: 訊息 0,級別 16,狀態 1
[Microsoft][ODBC SQL Server Driver]通訊鏈接失敗
ODBC: 訊息 0,級別 16,狀態 1
[Microsoft][ODBC SQL Server Driver]通訊鏈接失敗
前提條件是:
在win7X64下面運行的 MSDE2000版的獨立模式,MSDE正常運行,就是客戶端無法正常訪問,同樣的架構在XP下正常!
百度了N多網頁,所說比較雷同:
都是說舊Ado15程式,在win7下重新編譯后,無法正常在XP下運行,
而我這中問題正好相反。
最近偶爾發現在一些XP系統下,也出現了累死問題,sql查詢分析器連接后也出現同樣錯誤!
請大家探討一下,現在應該還有廣大的老資料庫應用存在同樣問題吧!
uj5u.com熱心網友回復:
win7X64下面運行的 MSDE2000版應該是64位的吧。而程式使用的是32位驅動。
用32位驅動訪問64位資料庫,這個……
真心要用裝個 Virtual PC 吧。
uj5u.com熱心網友回復:
我現在就是希望在 XP下發行個版本,最好能同時兼容XP和WIN7看看有沒有解決辦法
不然只好把軟體升級到新的平臺了
想象龐大的sql2008 有點恐怖
uj5u.com熱心網友回復:
在64位Windows下:64位exe和dll在目錄c:\windows\system32目錄下;
32位exe和dll在目錄c:\windows\syswow64目錄下;
請運行
c:\windows\syswow64\cliconfg.exe配置32位資料庫別名
c:\windows\syswow64\odbcad32.exe配置32位系統DSN
uj5u.com熱心網友回復:
較為簡單的辦法是,直接參考版本較高的ADO,比如2.8版本的。一般win7 在這個目錄下可以找到。C:\Program Files (x86)\Common Files\System\ado如果不能正確連接的話,注冊該目錄下的DLL或OCX。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/116788.html
上一篇:江湖救急
