我有一個訪問數據庫的連接,該數據庫實現了在Windows XP上完美工作的MSDataShape,現在當我嘗試在Windows Vista上運行它時,我發現一個錯誤。Windows Vista上的MSDataShape
在Vista上的錯誤:
錯誤#-2147467259 [微軟] [ODBC驅動程序管理器]數據源名稱找不到和未指定默認驅動程序
相同的代碼工作完美地一個乾淨的XP安裝。
什麼是大祕密?
我有一個訪問數據庫的連接,該數據庫實現了在Windows XP上完美工作的MSDataShape,現在當我嘗試在Windows Vista上運行它時,我發現一個錯誤。Windows Vista上的MSDataShape
在Vista上的錯誤:
錯誤#-2147467259 [微軟] [ODBC驅動程序管理器]數據源名稱找不到和未指定默認驅動程序
相同的代碼工作完美地一個乾淨的XP安裝。
什麼是大祕密?
我在Vista和Access 2000上測試過它,它對我很有幫助。我有最新的Jet版本,應該與Vista一起安裝。
Private Sub Form_Open(Cancel As Integer)
Set cn = New ADODB.Connection
With cn
.Provider = "MSDataShape"
.CursorLocation = adUseClient
.ConnectionString = "DATA PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=c:\docs\ltd.mdb"
.Open
End With
Set rs = New ADODB.Recordset
With rs
.Source = "SELECT * From Table1"
.ActiveConnection = cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open
End With
Set Me.Recordset = rs
Me.UniqueTable = "Table1"
End Sub
參考文獻:http://support.microsoft.com/kb/227053/EN-US/ http://support.microsoft.com/kb/239114/en-us
一些事情要檢查:
你正在使用ODBC,你確定你在使用完全相同的ODBC數據源XP機器創建?
如果您使用的是64位操作系統,則需要創建一個32 bit ODBC數據源,64位ODBC數據源對Access不可見,這是一個32位應用程序。
確保您安裝了正確的Jet數據庫驅動程序。如果您使用Access 2007,這些將是Access Database Engine component。
+1將我介紹給MSDatashape。我甚至不知道它以前存在。 – 2009-02-27 05:40:34
非2的答案解決了我的問題...我仍然無法做一個形狀的記錄集在Windows Vista Ultimate乾淨安裝。 似乎MSDataShape沒有這個操作系統的經驗。 順便問一下,我用Remou的方法。 – diego2k 2009-03-02 12:21:46