2010-03-14 5 views
2

У меня есть проект сервера отчетов в VS2005, и я добавил источник данных оракула в свой проект, и я сделал что-то вроде моего коллеги! оба из нас сделали те же настройки, но я не могу подключиться к серверу. Я подключился к БД в TOAD, но в VS2005 я не смог. Что я должен проверить?
я получаю эту ошибку во время тестового соединения:
ORA-12154: TNS: не удалось разрешить идентификатор подключения указанногоподключение к oracle

ответ

3

Я попытался HOST: PORT/MYDB Раздел ServerName для непосредственного подключения к oracle, и это сработало.

+1

Отлично! Иногда мы просто копаем слишком глубоко для простого решения! ;П –

1

Вы должны делать хорошо со следующей ссылкой:

ORA-12154: TNS:could not resolve the connect identifier specified

Причина:

Подключение к базе данных или другой службе было запрошено с использованием идентификатора соединения, а указанный идентификатор подключения не мог быть разрешен ved в дескриптор соединения, используя один из настроенных методов именования. Например, если тип используемого идентификатора подключения был именем сетевой службы, то имя нетто-службы не могло быть найдено в репозитории метода имен или хранилище не могло быть найдено или достигнуто.

Действие:

  • Если используются локальные НЕЙМИНГ (TNSNAMES.ORA файла):
  • Убедитесь, что "TNSNAMES" перечислен как одно из значений параметра NAMES.DIRECTORY_PATH в профиле Oracle Net (SQLNET.OR A)

  • Убедитесь, что файл TNSNAMES.ORA существует и находится в соответствующем каталоге и доступен.

  • Проверьте, что имя сетевого сервиса, используемое как идентификатор соединения, существует в файле TNSNAMES.ORA.

  • Убедитесь, что в файле TNSNAMES.ORA нет синтаксических ошибок. Ищите непревзойденные круглые скобки или бродячие символы. Ошибки в файле TNSNAMES.ORA могут сделать его непригодным.

- Если вы используете каталог имен:

  • Убедитесь, что "LDAP" указан в качестве одного из значений параметра NAMES.DIRETORY_PATH в Oracle Net профиля (SQLNET.ORA).

  • Проверьте, что сервер каталогов LDAP включен и доступен.

  • Убедитесь, что имя сети или имя базы данных, используемые в качестве идентификатора подключения, настроены в каталоге.

  • Убедитесь, что контекст по умолчанию используется правильно, указав полное сетевое имя службы или полный LDAP DN как идентификатор подключения

- Если вы используете Easy Connect именование:

  • Убедитесь, что "EZCONNECT" указан в качестве одного из значений NAMES.DIRETORY Параметр _PATH в профиле Oracle Net (SQLNET.ORA).

  • Убедитесь, что указаны имя хоста, порта и службы.

  • Попробуйте включить идентификатор соединения в кавычки. Для получения дополнительной информации об именовании см. Руководство администратора Oracle Net Services или руководство по операционной системе Oracle.

EDIT

Problem connecting to Oracle database

Build a .NET Application on the Oracle Database with Visual Studio 2005 or 2008

Problems connecting to Oracle 9i database with Oracle 10g Client and Win XP x64

Connection strings for Oracle

+0

Я проверил их все, я даже переустановил мой оракул 10g. но все еще есть проблема – LIX

+0

Какой DataProvider вы используете, System.Data.OracleClient или Oracle.DataAccess.Client? Является ли это первым, попробуйте использовать Oracle.DataAccess.Client, поскольку поставщик Oracle, поставляемый Microsoft, не работает. –

+0

См. Мой отредактированный ответ. Я надеюсь, что это помогает. –

2

У нас были проблемы с подключением к базам данных с использованием TNSNames.ora в Visual Studio 2010.
Файл TNSNAMES был правильным, установка оракула была правильной, но соединения не может быть выбран в окне «Add Connection».
Оказалось, что у TNSNAMES слишком много записей для поля выбора имени источника данных на экране «Добавить соединение».
Сокращение записей в файле TNSNAMES разрешило проблему.

Смежные вопросы