2016-01-04 2 views
0

Я пытаюсь получить строку соединения правильно и использовать odbcad32.exe для проверки соединения.odbcad32.exe Test Connection проходит, но сбой подключения к программе

Проблема в том, что я установил Connection, независимо от того, какой пароль я вводил.

Это кажется довольно бесполезным.

Ошибка моей программы .NET с именем источника данных не найдена и не указан драйвер по умолчанию, даже если odbcad32.exe не имеет проблем с получением соединения.

Имя источника данных: Test_Blah Описание: Test_Blah Имя хоста: BLH-корпус Номер порта: 5060 Имя База данных: Ih ID пользователя: администратор Driver: Progress OpenEdge 10.2B Driver Пароль: (пробел)

Это моя строка соединения:

<add name="BlhConnection" connectionString="DSN=Test_Blah;UID=Administrator;PWD=' ' ;" /> 

Любые идеи, как я могу получить эту работу?

ответ

0

32-разрядный ODBC Драйверы и соединения на их основе доступны только 32-битным клиентам.

Вы не упомянули свою ОС, но когда ваше клиентское приложение является 64-разрядным приложением, 32-разрядный драйвер ODBC не будет работать. Я не уверен на 100%, но я сомневаюсь, что есть 64-битный драйвер ODBC для OpenEdge в 10.2B. На OpenEdge 11 это не проблема.

+0

ОС 64-бит. Я с удовлетворением продемонстрировал, что программа не виновата, проверив ее также в файлах Live. Единственное, что виновато в этом подключении тестовой базы данных. И почему OBCAD32.exe подключается к любому паролю? Это испытание на мусор. –

+0

Мне удалось настроить Linked Server в SQL Server Management Studio, открыть его и посмотреть таблицы. Тем не менее, когда я запускаю приложение Extract, я до сих пор получаю эту ошибку: System.Data.Odbc.OdbcException: ERROR [IM002] [Microsoft] [Менеджер драйверов ODBC] Имя источника данных не найдено и не указан по умолчанию драйвер –

0

Я бы начал с проверки того, что у вас есть правильные учетные данные. Тем более, что вы заявляете, что получаете тот же результат независимо от того, что используете.

Самый простой способ проверить учетные данные - это войти в систему на сервере db и открыть сеанс «proenv». Использование proenv обеспечивает правильную установку всей среды Progress. Если это сервер Windows «proenv» находится в программной группе «Прогресс» или «OpenEdge», если сервер UNIX, вы можете запустить «$ DLC/bin/proenv» из командной строки. После запуска оболочки proenv вы можете использовать инструмент «sqlexp», который Progress предоставляет для проверки вашей строки подключения и учетных данных. Например:

sqlexp -user userName -password passWord -db dbName -S portNum 
+0

У меня нет идеи как сделать то, что вы предлагаете. Как подключиться к серверу БД? Невозможно найти подходящее руководство по использованию proenv. –

+0

Первым шагом является выяснение, является ли сервер db полем Windows или он запускает Unix? Кто создал базу данных? Этот человек должен понимать приведенные выше инструкции. Точка этих команд состоит в том, чтобы продемонстрировать, что на сервере есть сервер SQL-92, который, по вашему мнению, включен, и что ваше имя пользователя и пароль верны. Если тест работает, проблема кроется в вашем коде .NET. Если тест не выполняется, проблема связана с информацией о конфигурации сервера db. –

+0

Мне удалось настроить Linked Server в SQL Server Management Studio, открыть его и посмотреть таблицы. Однако, когда я запускаю приложение Extract, я все равно получаю эту ошибку: System.Data.Odbc.OdbcException: ERROR [IM002] [Microsoft] [диспетчер драйверов ODBC] Имя источника данных не найдено, а драйвер по умолчанию не указан –