Access 2007: несоответствие типов при открытии соединения ADO

У меня есть файл Access ADP. Я обновил внутреннюю базу данных, чтобы она указывала на сервер SQL 2005 вместо сервера SQL 2000, и соответствующим образом изменил информацию о подключении к базе данных. Файл отлично работает в моей собственной системе, работающей под управлением Windows 7 (64-разрядная версия) и Access 2007. В целевых системах под управлением Windows XP и Access 2007 основная функциональность базы данных почти сразу же взрывается с появлением «Ошибка выполнения» '13': где определение соединения по умолчанию - DAO, но база данных использует объект ADO. Однако при просмотре кода каждый экземпляр соединения специально объявляется как «ADODB.Connection».

Рассматриваемый код, вызывающий ошибку, таков:

Public Sub Tools()
dim db as ADODB.Connection
dim sql as String

sql = "Select SSPatch from tblPlastech"
set db = CurrentProject.Connection           ' THIS LINE CAUSES THE TYPE MISMATCH ERROR
dim rst as ADODB.RecordSet
set rst = New ADODB.RecordSet

rst.open sql, db, adOpenKeyset, adLockOptimistic
gsSSpath = rst!sspath
QUOTES = Chr(34)
rst.Close
set rst = Nothing
db.Close
set db = Nothing

End Sub

Может ли кто-нибудь пролить свет на проблему? Прямо сейчас я в тупике.

5
задан Community 23 May 2017 в 12:28
поделиться