sql >> Database teknologi >  >> RDS >> Oracle

VB.NET-problem med at oprette forbindelse til Oracle 11g

Jeg mærker din smerte, har lige været igennem noget lignende i en udsendelsessituation. Du har sandsynligvis flere klienter installeret, og dit miljø trækker dll'er til ældre udgivelser (selvom du har en seneste oracle.dataaccess.dll korrekt refereret i dit projekt). At rette dette på dit dev-miljø er én ting, en prod-implementeringsserver er en anden. Ikke sikker på, hvad din implementeringssituation er, men her er, hvad der virkede for mig.

Efter at have kæmpet med at prøve at opgradere odp.net i eksisterende oracle home, tilføje nyt oracle home, osv., fandt jeg ud af, at den nemmeste måde at rette alt på er at downloade den seneste odac med xcopy-implementering fra Oracle, og følg readme (og se her for en ældre artikel om dette også). Dybest set vil du køre en install.bat-fil til opsætning lokalt (i separat mappe, min var c:\oracle_odac), og derefter ændre din projektreference til at pege på oracle.dataaccess.dll i denne nye mappe (jeg brugte 4 i stedet for 2.x), og tilføj den nye mappes bin dirs foran din sti (c:\oracle_odac\bin og c:\oracle_odac\odp.net\bin\4). På din implementeringsserver skal du blot kopiere hele mappen c:\oracle_odac over (via xcopy eller dog) og konfigurere stien.

Når det er sagt, venter jeg spændt på produktionsudgivelsen af ​​den fuldt administrerede odp.net fra Oracle (i beta nu).

EDIT:Bare for at tilføje, at du kan undgå at rode med PATH'er, hvis du opsætter i din app eller webkonfigurationsfil dllpath. For eksempel:

<configuration>
...
    <configSections>
      <section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>  
...

<oracle.dataaccess.client>
    <settings>
      <add name="DllPath" value="c:\oracle_odac\bin"/>
    </settings>
  </oracle.dataaccess.client>
...

Dette vil tilsidesætte andre indstillinger såsom registreringsdatabasen eller machine.config. Og det vil tillade flere odp.net-konfigurationer at eksistere fredeligt, og give hver app mulighed for at pege på den version, den har brug for på den samme server.



  1. Integration med et andet system

  2. Oracle FOR LOOP SELECT-erklæringseksempel

  3. PLSql returner værdier

  4. MYSQL følsom søgning efter utf8_bin felt