Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 17581|Відповідь: 0

[Джерело] Існує кілька способів, як C# може підключатися до Oracle

[Копіювати посилання]
Опубліковано 06.09.2016 13:20:21 | | |

1. Перейдіть через System.Data.OracleClient (потрібно встановити Oracle client і налаштувати tnsnames.ora)
1. Додати посилання на простір імен до System.Data.OracleClient
2. використання System.Data.OracleClient;
3.
string connString = "User ID=IFSAPP; Password=IFSAPP; Джерело даних=RACE; ";
OracleConnection conn = новий OracleConnection(connString);
спробуйте
{
    Конн. Відкрито();
    MessageBox.Show (конн. State.ToString());
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}

2. Через System.Data.OracleClient (потрібно встановити клієнт Oracle і не потрібно налаштовувати tnsnames.ora)
1. Додати посилання на простір імен до System.Data.OracleClient
2. використання System.Data.OracleClient;
3.
string connString = "User ID=IFSAPP; Password=IFSAPP; Джерело даних=(DEscrip{filtering}tION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = RACE)))";
OracleConnection conn = новий OracleConnection(connString);
спробуйте
{
    Конн. Відкрито();
    MessageBox.Show (конн. State.ToString());
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}

Третє: через драйвери System.Data.OleDb та Oracle
1. Додати посилання на простір імен до System.Data.OracleClient
2. використання System.Data.OleDb;
3.
string connString = "Provider=OraOLEDB.Oracle.1; User ID=IFSAPP; Password=IFSAPP; Джерело даних=(DEscrip{filtering}tION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = RACE)))";
OleDbConnection conn = новий OleDbConnection(connString);
спробуйте
{
    Конн. Відкрито();
    MessageBox.Show (конн. State.ToString());
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}

Четверте: через System.Data.OleDb та драйвер Microsoft Oracle
1. Додати посилання на простір імен до System.Data.OracleClient
2. використання System.Data.OleDb;
3.
string connString = "Provider=MSDAORA.1; User ID=IFSAPP; Password=IFSAPP; Джерело даних=(DEscrip{filtering}tION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = RACE)))";
OleDbConnection cnn = новий OleDbConnection(connString);
спробуйте
{
    Конн. Відкрито();
    MessageBox.Show (конн. State.ToString());
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}

Зауваження:
a. Операційна система XP встановила драйвер Oracle від Microsoft C:\Program Files\Common Files\System\Ole DB\msdaora.dll
b. Драйвер вимагає розміщення трьох файлів (oraocixe10.dll, oci.dll та ociw32.dll) клієнта Oracle під System32

П'яте: Використовуйте ODP-з'єднання
1. Завантажити та встановити ODP.NET (http://www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html)
2. Після завершення встановлення буде згенерований файл послідовності.
3. Знайдіть цю інсталяційну папку, відкрийте папку %ORACLE_HOME%\Network\Admin і створіть під нею файл tnsnames.ora, вміст якого може стосуватися конфігурації у папці Sample під нею
Oracle.RACE =
(DEscrip{filter}tION=.)
   (ADDRESS_LIST=
     (АДРЕСА=
       (ПРОТОКОЛ=TCP)
       (ХОСТ=127.0.0.1)
       (ПОРТ=1521)
     )
   )
   (CONNECT_DATA=
     (SID=РАСА)
     (СЕРВЕР=ВИДІЛЕНИЙ)
   )
)
Oracle.RACE — це назва рядка з'єднання, яку можна брати за бажанням. Рядок після знака рівності можна скопіювати з дескриптора TNS після підключення до бази даних у інструменті Enterprise Manager Console
4. Посилатися на простір імен Oracle.DataAccess
5. використання Oracle.DataAccess.Client;
6. Приклад коду:
string connString = "ДЖЕРЕЛО ДАНИХ=Oracle.RACE; ЗБЕРЕЖЕННЯ ІНФОРМАЦІЇ про безпеку = True; USER ID=IFSAPP; password=IFSAPP";
OracleConnection conn = новий OracleConnection(connString);
спробуйте
{
    Конн. Відкрито();
    OracleCommand cmd = новий OracleCommand(cmdText,conn);
    OracleDataReader reader = cmd.ExecuteReader();
    саме так. DataGridView1.DataSource = читач;
    саме так. DataGridView1.DataBind();
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}

Шосте: Використовуйте сторонні драйвери
Сторонні драйвери включають Devart, драйвери для завантаження http://www.devart.com/dotconnect/oracle/, але це комерційні версії і вимагають придбання ліцензії або зламу
Формат з'єднання User ID=myUsername; Password=myPassword; Host=ora; Pooling=true; мінімальний розмір басейну=0; Максимальний розмір басейну=100; Тривалість з'єднання=0;
1. Посилайтеся на простір назв Devart.Data.Oracle
2. використання Devart.Data.Oracle;
3.
OracleConnection conn = новий OracleConnection();
Конн. ConnectionString = "";
Конн. Unicode = true;
Конн. UserId = "IFSAPP";
Конн. Пароль = "IFSAPP";
Конн. Порт = 1521;
Конн. Server = "127.0.0.1";
Конн. Sid = «РАСА»;
спробуйте
{
    Конн. Відкрито();
    виконання запитів тощо
}
catch (виняток, наприклад)
{
    ShowErrorMessage(наприклад, Message.ToString());
}
зрештою
{
    Конн. Близько();
}




Попередній:Windows не може запускати SQL Server (MSSQLSERVER) на локальному комп'ютері. Для отримання додаткової інформації дивіться відділ...
Наступний:Алгоритм c# QQ з ключем до bkn
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com