У меня есть расширенная хранимая процедура (написанная на Delphi, если это имеет какое-то значение), которая устанавливает свое собственное соединение через ODBC и выполняет некоторую обработку - вещи, которые нельзя сделать с помощью одного T-SQL.
Если я пытаюсь подключиться, используя системный DSN, который настроен (например, с именем MyDataSource), xp возвращает следующую ошибку:
[Microsoft] [Драйвер ODBC SQL Server] [SQL Server] Не удается открыть базу данных, запрошенную при входе в систему «MyDataSource». Ошибка входа.
Однако, если я подключаюсь, используя строку подключения (SERVER = MyServerName; DATABASE = MyDatabaseName; и т. Д.), Тогда он подключается и xp работает.
Я тестировал код вне xp, просто приложение для Windows, и соединение с использованием DSN работало. Я ожидал бы этого, так как я подключался к базе данных в течение 10 лет!
Так что у меня это работает, но я действительно хочу знать, почему он не работает с использованием DSN. Я также пытался с DSN пользователя, но без разницы.
Есть идеи? Спасибо.