Ошибка ORA-12154 в Delphi для соединения, работающего в TOAD - PullRequest
0 голосов
/ 10 января 2011

В Delphi 2010 я хочу подключиться к экземпляру Oracle XE, установленному на моем собственном компьютере, с использованием компонентов ODAC (TOraSession). Когда я установил параметры для соединения, я получил сообщение об ошибке «ORA-12154: TNS: не удалось разрешить указанный идентификатор соединения».

Однако, используя те же параметры (и тот же файл TNSNames.Ora), я могу подключиться с помощью TOAD.

Кто-нибудь может мне помочь с этим.

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 10 января 2011

Если вы работаете в операционной системе x64 и у вас установлен Delphi (или любое программное обеспечение, пытающееся получить доступ к Oracle) по пути с круглыми скобками (то есть (x86) ...), а TOAD нет, вы можете столкнуться с этой ошибкой .

См. DocID 334528.1 в поддержке Oracle (если у вас есть доступ). Эта ошибка была исправлена ​​в более позднем патче, но для XE нет официального патча (в основном это 10.2.0.1).

Я бы не стал использовать Oracle XE, потому что это практически неподдерживаемая версия, патч для него не выпущен. Если вам нужен Oracle для самообучения, вы можете загрузить полное программное обеспечение по адресу http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html (проверьте лицензию), если вам нужен бесплатный сервер баз данных, посмотрите в другом месте.

0 голосов
/ 10 января 2011

Возможно, вы не используете один и тот же tnsnames.ora (даже если думаете, что используете). Это может произойти, если у вас, например, установлен клиент Oracle 10g и ODAC 11.

Чтобы узнать, является ли это проблемой с tnsnames, вы можете попробовать подключиться без tnsnames из кода, подобного следующему:

(ОПИСАНИЕ = (ADDRESS_LIST = (АДРЕС = (ПРОТОКОЛ = TCP) (HOST = [MyHost]) (PORT = [MyPort]))) (CONNECT_DATA = (SERVER = ПОСВЯЩЕННЫЙ) (SERVICE_NAME = [MyOracleSID]))) ; Идентификатор пользователя = [myUsername]; Пароль = [myPassword];

замена значений между [] вашими фактическими значениями (HOST = 128.1.7.9) (PORT = 1521) ....

...