Я новичок в базах данных и .net!

У меня установлен SQL Developer 3.0, с помощью которого я могу подключиться к серверу Oracle 11g Database.

Требуется написать программу на C # для подключения к базе данных oracle и выполнения запроса; в моем проекте Visual Studio 2013 я добавил ссылку на Oracle.DataAccess.Client и написал код, однако при отладке возникает ошибка «Ora-12541: TNS: No-Listener».

У меня вопрос: нужно ли мне устанавливать клиент Oracle (64-разрядный ODAC 11.2 Release 6 (11.2.0.4.0) Xcopy для Windows x64?), Я предполагал, что разработчик SQL позаботится об этом!

Пожалуйста помоги!

0
Nj_Acc 18 Фев 2015 в 15:45

2 ответа

Лучший ответ

Если вы не скопировали Oracle.DataAccess.dll с другого компьютера, все пакеты Oracle, которые включают его, также включают некоторую версию клиента. ODAC включает полную версию, а в установках xcopy есть мгновенный клиент. Я также укажу на управляемого поставщика, хотя для простоты, поскольку он не имеет неуправляемых зависимостей,

Однако, если вы дошли до ошибки «ora-xxxxx», похоже, ваш клиент Oracle установлен правильно. Единственная проблема, с которой вы сейчас столкнулись, - это ваша строка подключения. Если вы обычно используете имя TNS в Sql Developer, вам нужно либо скопировать существующий tnsnames.ora в сеть / admin в вашем новом домашнем каталоге oracle, либо вам нужно установить переменную системной среды TNS_ADMIN, чтобы она указывала на существующую. Есть и другие варианты, но ваша ошибка в этом случае специфична для tns.

0
b_levitt 19 Фев 2015 в 12:44

У SQL Developer есть собственные драйверы Oracle (насколько мне известно, JDBC), поэтому вам необходимо установить Oracle Client, чтобы подключиться к базе данных Oracle в Visual Studio.

Обратите внимание, что «ODAC» содержит только поставщика данных ODP.NET (т.е. в основном файл Oracle.DataAccess.dll). Чтобы использовать его, вы должны установить фактический клиент Oracle - по крайней мере, Instant Client (который также включен в файл загрузки ODAC).

Подумайте об использовании управляемого драйвера ODP.NET, тогда вам понадобится только одна DLL, и ничего больше. Его можно загрузить со страницы Oracle 64-разрядных компонентов доступа к данным Oracle ( ODAC) Загружает и работает как для 32-битных, так и для 64-битных приложений.

2
Wernfried Domscheit 19 Фев 2015 в 13:09