Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle база данни TNS Дължината на стойността за ключ „източник на данни“ надвишава ограничението си от „128“

Не сте ни показали пълния код, който използвате за свързване към база данни, но изглежда от коментар към друг отговор, че използвате OLE DB. Бих избягвал да го използвам, особено ако изглежда, че има донякъде произволно ограничение от 128 знака за източник на данни.

Също така бих посочил, че можете също така да избегнете необходимостта да инсталирате клиент на Oracle, както е препоръчано от друг отговарящ. Нямам много опит с „незабавния“ клиент, но пълният клиент изисква тежко изтегляне и не е необходим само за да можете да свържете програма на C# към Oracle.

Вместо това можем да използваме библиотеката за управляван достъп до данни на Oracle. Можете да инсталирате това с помощта на NuGet. За да направите това:

  • отидете на Инструменти> Мениджър на пакети за библиотека> Конзола за управление на пакети,
  • уверете се, че правилният проект е избран в падащия списък „Проект по подразбиране“,
  • въведете

    Install-Package odp.net.managed
    

Това трябва да добави изтегляне на библиотеката от NuGet и добавяне на Oracle.ManagedDataAccess към препратките на вашия проект.

След това, ако добавите using директива за Oracle.ManagedDataAccess.Client , следният код трябва да общува с база данни на Oracle:

string connStr = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<hostname>)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=<service_name>)));User Id=<user>;Password=<password>";
Console.WriteLine("Connection string has length " + connStr.Length);
using (var connection = new OracleConnection() { ConnectionString = connStr })
{
    connection.Open();
    OracleCommand command = new OracleCommand("SELECT * FROM DUAL", connection);
    using (OracleDataReader reader = command.ExecuteReader())
    {
        while (reader.Read())
        {
            Console.WriteLine(reader.GetString(0));
        }
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LN() Функция в Oracle

  2. Инсталиране на Oracle Instant Client

  3. Кой е най-лесният начин да направите колона САМО ЗА ЧЕТЕНЕ в Oracle?

  4. Грешка Xmlparserv2 при разгръщане на приложение в jboss, Инсталиране на модул Oracle ojdbc в уеб приложение JBoss за Java

  5. Актуализирайте колоната на набора от таблици, равна на това да изберете къде ID съвпада извън заявката в Oracle