sql >> Databasteknik >  >> RDS >> Oracle

Varför skulle Oracle.ManagedDataAccess inte fungera när Oracle.DataAccess gör det?

Företrädesordningen för att lösa TNS-namn i ODP.NET, Managed Driver är denna (se här):

  1. Datakällalias i avsnittet "datakällor" under avsnittet i .NET-konfigurationsfilen.
  2. datakällans alias i filen tnsnames.ora på den plats som anges av 'TNS_ADMIN' i .NET-konfigurationsfilen.
  3. datakällans alias i filen tnsnames.ora som finns i samma katalog som .exe.
  4. datakällans alias i filen tnsnames.ora finns på %TNS_ADMIN% (där %TNS_ADMIN% är en miljövariabelinställning).
  5. datakällans alias i filen tnsnames.ora som finns på %ORACLE_HOME%\network\admin (där %ORACLE_HOME% är en miljövariabelinställning).

Jag tror att anledningen till att ditt exempel fungerar med Oracle.DataAccess men inte med Oracle.ManagedDataAccess är att Windows-registerbaserad konfiguration inte stöds för den senare (se dokumentationen) - ODP.NET-installationen ställer in en ORACLE_HOME-registernyckel (HLKM\SOFTWARE\Oracle \Key_NAME\ORACLE_HOME) som bara känns igen av den ohanterade delen.



  1. Fel vid Update Join

  2. Förhindrar JDBC-specifikationen '?' från att användas som operator (utanför citattecken)?

  3. Hur Oracle Index klustringsfaktor beräknas

  4. Dela upp avgränsade värden i en SQL-kolumn i flera rader