инструкции odbc для подключения к oracle


Я пытаюсь подключиться к базе данных oracle с моего веб-сайта (asp. net-mvc). единственная информация, которую я должен подключить к базе данных, - это инструкции ODBC, которые говорят мне идти:

  1. Он говорит, чтобы перейти в каталог oracle на машине и ввести это в файл TSNNames.ora и введите это в:

    DBNAME=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=[machine])(port=[port]))
       (CONNECT_DATA=(SID=[DBNAME])))
    
  2. А затем перейдите на панель управления и вручную добавьте соединение через Мастер GUI.

Есть ли в любом случае я могу подключиться к этой базе данных без необходимости все это устраивать? Я надеялся просто воткнуть туда соединительную нить и отправиться в путь. Я развертываю на разных машинах и не хочу обременять себя необходимостью обновления .ora файлы или пройти через этот мастер настройки GUI.

У кого-нибудь есть для меня предложение?

3 7

3 ответа:

Не используйте ODBC. ODP.NET - это драйвер, предоставляемый Oracle, который основан на той же модели, что и SQL Server: просто загрузите сборку, ссылайтесь на нее в своем проекте и используйте ее:

    using (var conn = new OracleConnection("Some connection string"))
    using (var cmd = conn.CreateCommand())
    {
       conn.Open();
       cmd.CommandText = "SELECT id FROM foo";
       using (var reader = cmd.ExecuteReader())
       {
          while (reader.Read())
          {
             int id = reader.GetInt32(0);
          }
       }
    }       

Согласно аналогичному вопросу, вручную подключается к базе данных в Asp.net MVC , здесь нет никакой магии. Просто подключитесь к БД, как обычно.

Есть пример VB @ http://www.aspdev.org/articles/asp.net-mysql-connect/ это для MySql, но должно быть достаточно просто переключиться на строку подключения Oracle.

Существует по крайней мере один ado.net поставщик для Oracle, который не требует наличия клиента Oracle на компьютере. См. http://www.devart.com/dotconnect/oracle / . Деварт называет эту функцию "прямым режимом". Этот конкретный поставщик Oracle также, вероятно, будет работать намного лучше, чем поставщик odbc.

Но есть что-то, чего я не понимаю? Вы должны построить asp.net приложение mvc, так что вам нужно только установить на сервере. Так в чем же проблема?