Учитывая предварительно сконфигурированную систему DSD системы ODBC, я хотел бы написать функцию, которая изящно проверит, что соединение с использованием VBA.Как лучше всего использовать VBA в Access или Excel для тестирования соединения ODBC?
Private Function TestConnection(ByVal dsnName As String) As Boolean
' What goes here?? '
End Function
Edit: Для того, чтобы уточнить, что система DSNs указывают на внешние SQL Server 2005 базы данных, с помощью проверки подлинности Windows NT.
Один из подходов, который я пробовал, - отправить случайный запрос в целевую базу данных и поймать ошибку. Если запрос работает, верните true. Если есть ошибка, верните false. Это работает отлично, но это ... kludgy. Есть ли более элегантный способ, особенно тот, который не полагается на On Error Перейти к:?
Примечание. Это устаревшая база данных Access 2000, над которой я работаю, поэтому любое решение не может иметь никаких зависимостей Access 2007 или 2003. Я хотел бы сделать его общим для VBA, но если в Access есть простой способ, это тоже хорошо.
Большая обязанность за любой совет.
DSN указывают на внешнюю базу данных SQL Server. Извините, должен был указать - я обновлю вопрос, чтобы его отразить. –
Доступ не может использоваться ODBC для подключения к базе данных Jet, поэтому первая не будет использоваться в Access. –