Erlang ODBC Проблемы с соединением - PullRequest
1 голос
/ 20 октября 2011

У меня запущен Oracle 10g Release 2, и из моего sqlplus прослушиватель БД Oracle работает, и я могу выдавать и выполнять команды для базы данных, как показано ниже

bash-3.00$ sqlplus /nolog

SQL*Plus: Release 10.2.0.2.0 - Production on Thu Oct 20 18:33:33 2011

Copyright (c) 1982, 2005, Oracle.  All Rights Reserved.

SQL> connect system/muzaaya
Connected.
SQL> create table fruits (
  2  fruit_name VARCHAR(30) PRIMARY KEY,
  3  fruit_biological_name VARCHAR2(50),
  4  fruit_quantity INT NOT NULL,
  5  fruit_location VARCHAR(20) NOT NULL);

Table created.

SQL>

Затем я иду сюда: http://www.datadirect.com/download.html, чтобы получить ODBC-коннектор для Oracle. Я загружаю это и устанавливаю это на Windows 7 64 бита. Затем я настраиваю Источники данных, используя мои окна Windows ODBC Administrator. Я создаю DSN с именем D1, введите описание, имя сервера, версию клиента, имя пользователя и пароль и, наконец, я проверяю соединение, и соединение установлено идеально!

После этого я захожу в свой erlang и запускаю наше приложение odbc, вот что происходит ниже:

1> odbc:start().
ok
2> odbc:connect("DSN=D1;UID=system;PWD=muzaaya", []).
{error,"[Microsoft][ODBC Driver Manager] The specified DSN contains an 
architecture mismatch between the Driver and Application SQLSTATE IS: 
IM014 Connection to database failed."}

Что это значит? и как я могу исправить это, чтобы подключиться к моей базе данных Oracle от Erlang?

Может ли кто-нибудь дать мне какие-либо конкретные примеры соединений ODBC для Oracle (если таковые имеются) от Erlang или некоторый связанный опыт на другом языке, чтобы я мог сравнивать и изменять здесь и там?

Есть ли еще параметры, которые необходимо указать в нашем соединении Erlang ODBC для подключения к ORACLE, например, tnsnames.ora,spfile, or pfile, кроме тех, которые я уже указал в настройках ODBC?

1 Ответ

2 голосов
/ 21 октября 2011

Это выглядит как «несоответствие архитектуры». Я раньше никогда не использовал odbc, но быстрый поиск в Google дал следующий результат:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms712362(v=vs.85).aspx

Где вы читаете:

Если вы используете 64-битный файл odbcad32.exe для настройки или удаления DSN, подключается к 32-битному драйверу, например, Driver do Microsoft Access (* .mdb), вы получите следующее сообщение об ошибке:

Указанный DSN содержит несоответствие архитектуры между Драйвер и приложение

И тогда предлагается решение:

Чтобы устранить эту ошибку, используйте 32-разрядный файл odbcad32.exe для настройки или удалить DSN.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...