Я новичок в базах данных и .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 позаботится об этом!
Пожалуйста помоги!
2 ответа
Если вы не скопировали Oracle.DataAccess.dll с другого компьютера, все пакеты Oracle, которые включают его, также включают некоторую версию клиента. ODAC включает полную версию, а в установках xcopy есть мгновенный клиент. Я также укажу на управляемого поставщика, хотя для простоты, поскольку он не имеет неуправляемых зависимостей,
Однако, если вы дошли до ошибки «ora-xxxxx», похоже, ваш клиент Oracle установлен правильно. Единственная проблема, с которой вы сейчас столкнулись, - это ваша строка подключения. Если вы обычно используете имя TNS в Sql Developer, вам нужно либо скопировать существующий tnsnames.ora в сеть / admin в вашем новом домашнем каталоге oracle, либо вам нужно установить переменную системной среды TNS_ADMIN, чтобы она указывала на существующую. Есть и другие варианты, но ваша ошибка в этом случае специфична для tns.
У 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-битных приложений.
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.